/* Public catalogue: the same navy, warm gold and Thai type as LINE and Work. */
@media screen {
  body.shop-catalog { --ink:#F4F1E8; --muted:#B9C5D2; --accent:#D9BC7E; --line:#D9BC7E30; background:#071321; color:var(--ink); font-family:ShopThai,system-ui,sans-serif; }
  .shop-catalog .wrap { max-width:1220px; }
  .shop-catalog .header { background:#071321f2; border-bottom:1px solid var(--line); backdrop-filter:blur(16px); }
  .shop-catalog .head { min-height:88px; gap:24px; }
  .shop-catalog .brand strong { color:var(--accent); font-size:20px; }
  .shop-catalog .brand small { color:var(--muted); letter-spacing:.05em; }
  .shop-catalog .brand-logo { border:1px solid #D9BC7E66; box-shadow:0 0 0 5px #D9BC7E08; }
  .shop-catalog .head nav { gap:25px; color:#d8e0e7; }
  .shop-catalog .head nav a { padding:12px 0; border-bottom:1px solid transparent; }
  .shop-catalog .head nav a:hover { color:var(--accent); border-color:var(--accent); }
  .shop-catalog .cartbutton { min-height:46px; background:#D9BC7E; border:1px solid #eedbb2; color:#071321; border-radius:12px; padding:10px 16px; }
  .shop-catalog .cartbutton span { background:#071321; color:#F4F1E8; }
  .shop-catalog .adminlink { color:#B9C5D2; }
  .shop-catalog .hero { position:relative; margin:20px auto 0; max-width:1400px; border:1px solid var(--line); border-radius:24px; background:#0E2034; overflow:hidden; }
  .shop-catalog .hero:after { display:none; }
  .shop-catalog .hero-grid { position:relative; opacity:1; min-height:590px; gap:30px; padding-block:55px; grid-template-columns:1.1fr 1fr; }
  .shop-catalog .hero .eyebrow { padding:0; background:none; color:#D9BC7E; font-size:12px; letter-spacing:.1em; }
  .shop-catalog .hero h1 { color:#F4F1E8; font-size:clamp(42px,5.2vw,68px); letter-spacing:-.035em; line-height:1.28; margin:22px 0; }
  .shop-catalog .hero h1 em { color:#D9BC7E; }
  .shop-catalog .hero p { color:#C8D2DD; font-size:17px; max-width:490px; }
  .shop-catalog .hero-note { color:#B9C5D2; font-size:13px; }
  .shop-catalog .hero-photo { border-radius:20px; border:1px solid #D9BC7E44; background:#071321; box-shadow:0 24px 70px #0006; }
  .shop-catalog .hero-photo img { width:100%; height:370px; object-fit:cover; }
  .shop-catalog .hero-photo figcaption { background:#071321; color:#D9BC7E; font-size:12px; padding:15px 18px; letter-spacing:.04em; }
  .shop-catalog .button,.shop-catalog button.add { border-radius:12px; min-height:48px; }
  .shop-catalog .button.primary,.shop-catalog .add { color:#071321; background:linear-gradient(120deg,#ecd7aa,#D9BC7E); border:1px solid #e6cc96; font-weight:750; }
  .shop-catalog .button.primary:hover,.shop-catalog .add:hover { background:#F0DCB4; }
  .shop-catalog .button.light,.shop-catalog .map-link { color:#F4F1E8; background:#142A40; border:1px solid #D9BC7E48; }
  .shop-catalog .button.light:hover,.shop-catalog .map-link:hover { background:#1b344b; }
  .shop-catalog .service-strip { margin-top:24px; border-block:1px solid var(--line); background:#0C1C2C; color:#C8D2DD; }
  .shop-catalog .service-strip a { color:#D9BC7E; }
  .shop-catalog .kicker,.shop-catalog .eyebrow { color:#D9BC7E; }
  .shop-catalog .sectiontop h2,.shop-catalog .budget h2,.shop-catalog .admin h2 { color:#F4F1E8; line-height:1.4; }
  .shop-catalog .sectiontop p,.shop-catalog .gallery-intro,.shop-catalog .hint { color:#B9C5D2; }
  .shop-catalog .categories { gap:12px; }
  .shop-catalog .category { background:linear-gradient(145deg,#11263b,#0C1C2C); color:#F4F1E8; border:1px solid var(--line); border-radius:16px; padding:22px 18px; }
  .shop-catalog .category span { color:#D9BC7E; }
  .shop-catalog .category:hover { border-color:#D9BC7E99; background:#142D44; }
  .shop-catalog .shop-photo-card,.shop-catalog .product { border:1px solid var(--line); background:#0E2034; border-radius:18px; overflow:hidden; }
  .shop-catalog .shop-photo-card h3,.shop-catalog .product h3 { color:#F4F1E8; }
  .shop-catalog .shop-photo-card p,.shop-catalog .product p { color:#B9C5D2; }
  .shop-catalog .shop-inquire { color:#D9BC7E; }
  .shop-catalog .product-body small,.shop-catalog .product-bottom strong { color:#D9BC7E; }
  .shop-catalog .product-art,.shop-catalog .product:nth-child(n) .product-art { background:#152D42; }
  .shop-catalog .filters label,.shop-catalog .panel label,.shop-catalog .checkout label { color:#C8D2DD; }
  .shop-catalog input:not([type=checkbox]):not([type=radio]),.shop-catalog select,.shop-catalog textarea { background:#091827; border:1px solid #8DA1B24D; color:#F4F1E8; border-radius:10px; min-height:48px; }
  .shop-catalog input::placeholder,.shop-catalog textarea::placeholder { color:#9CAFC1; opacity:1; }
  .shop-catalog input[type=checkbox],.shop-catalog input[type=radio] { accent-color:#D9BC7E; }
  .shop-catalog .budget { background:#0B1A2A; border-block:1px solid var(--line); margin-top:64px; }
  .shop-catalog .budget p,.shop-catalog .budget small { color:#B9C5D2; }
  .shop-catalog .budget-list { background:#0E2034; border:1px solid var(--line); border-radius:18px; }
  .shop-catalog .budget-list div { border-color:var(--line); }
  .shop-catalog .budget-list b { color:#D9BC7E; }
  .shop-catalog .budget-services span { color:#D9BC7E; }
  .shop-catalog .budget-services>div { border-color:#D9BC7E66; }
  .shop-catalog .procurement-start { color:#F4F1E8; background:#0E2034; border-color:var(--line); border-radius:18px; }
  .shop-catalog .doc-intro,.shop-catalog .doc-preview-note,.shop-catalog .doc-form,.shop-catalog .doc-items,.shop-catalog .document-builder,.shop-catalog .doc-templates { background:#0E2034; color:#F4F1E8; border-color:var(--line); border-radius:18px; }
  .shop-catalog .doc-form label,.shop-catalog .doc-items label { color:#C8D2DD; }
  .shop-catalog .doc-form h3,.shop-catalog .doc-items h3 { color:#F4F1E8; }
  .shop-catalog .doc-total { color:#F4F1E8; border-color:#D9BC7E; }
  .shop-catalog .template-button,.shop-catalog .doc-template,.shop-catalog [data-template] { background:#142A40; color:#F4F1E8; border:1px solid var(--line); border-radius:10px; }
  .shop-catalog .doc-items .remove { color:#FFD0C7; background:#38282C; }
  .shop-catalog .download-card { background:linear-gradient(145deg,#10263B,#0A1929); border:1px solid var(--line); border-top:3px solid #D9BC7E; border-radius:16px; }
  .shop-catalog .download-card h3 { color:#F4F1E8; }
  .shop-catalog .download-card p,.shop-catalog .download-card small { color:#B9C5D2; }
  .shop-catalog .download-grid article { background:#0E2034; color:#F4F1E8; border:1px solid var(--line); border-top:3px solid #D9BC7E; border-radius:16px; }
  .shop-catalog .download-draft-link { color:#D9BC7E; }
  .shop-catalog .contact-section { border-color:var(--line); }
  .shop-catalog .contact-section h2 { color:#F4F1E8; }
  .shop-catalog .contact-section p { color:#B9C5D2; }
  .shop-catalog .footer { background:#050F1B; color:#F4F1E8; border-top:1px solid var(--line); }
  .shop-catalog .footer strong { color:#D9BC7E; }
  .shop-catalog .footer p { color:#B9C5D2; }
  .shop-catalog .panel,.shop-catalog .admin-item { background:#0E2034; border:1px solid var(--line); }
  .shop-catalog dialog { color:#F4F1E8; background:#0E2034; border:1px solid #D9BC7E55; border-radius:20px; }
  .shop-catalog dialog::backdrop { background:#020915bf; backdrop-filter:blur(4px); }
  .shop-catalog .close { color:#F4F1E8; }
  .shop-catalog .cart-row,.shop-catalog .qty button { border-color:var(--line); }
  .shop-catalog .qty button { color:#F4F1E8; background:#142A40; }
  .shop-catalog #quoteImportDialog { background:#0E2034; }
  .shop-catalog .quote-import-table { color:#F4F1E8; }
  .shop-catalog .quote-import-table thead th { background:#132E46; color:#F4F1E8; }
  .shop-catalog .quote-import-table tr,.shop-catalog .quote-import-table td { border-color:#8DA1B24D; }
  .shop-catalog .quote-import-table tbody tr:nth-child(even) { background:#10263B; }
  .shop-catalog .quote-import-source,.shop-catalog .quote-import-selection { color:#D9BC7E; }
  .shop-catalog .quote-import-warnings { background:#392F1F; color:#F4DCA8; border-color:#D9BC7E66; }
  .shop-catalog .quote-import-choice,.shop-catalog .quote-import-section { border-color:#D9BC7E55; background:#10263B; color:#F4F1E8; }
  .shop-catalog .quote-import-section label,.shop-catalog .quote-import-price-choice,.shop-catalog .quote-import-choice legend { color:#F4F1E8; }
  .shop-catalog .quote-import-table .quote-import-source-note { color:#B9C5D2; }
  .shop-catalog #quoteImportDescription,.shop-catalog .quote-import-price-mark,.shop-catalog .quote-import-table td::before { color:#B9C5D2; }
  .shop-catalog .quote-import-price-mark[data-edited=true] { color:#D9BC7E; }
  .shop-catalog .quote-import-actions { background:#0E2034; border-color:var(--line); }
  .shop-catalog .quote-import-table tr[data-invalid=true] { background:#38282C; }
  .shop-catalog .quote-import-status { background:#132E46; border-color:#D9BC7E55; color:#F4F1E8; }
  .shop-catalog .quote-import-block { color:#FFD0C7; background:#38282C; }
  .shop-catalog #documentDialog,.shop-catalog #printDocument { color:#182b3b; background:white; }
  .shop-catalog #documentDialog .close { color:#182b3b; }
  .shop-catalog #toast { color:#071321; background:#ECD7AA; border:1px solid #D9BC7E; box-shadow:0 10px 30px #0006; }
  .shop-catalog :focus-visible { outline:3px solid #D9BC7E!important; outline-offset:4px!important; }
  .shop-catalog .skip:focus { color:#071321; background:#D9BC7E; }
  @media(max-width:900px) {
    .shop-catalog .head { gap:12px; }
    .shop-catalog .hero { margin:12px 12px 0; }
    .shop-catalog .hero-grid { min-height:0; gap:28px; padding-block:34px; }
    .shop-catalog .hero-photo img { height:290px; }
  }
  @media(max-width:600px) {
    .shop-catalog .head { min-height:76px; padding-block:14px 8px; }
    .shop-catalog .brand strong { font-size:17px; }
    .shop-catalog .brand-logo { width:44px; height:44px; }
    .shop-catalog .head nav { overflow-x:auto; gap:20px; justify-content:space-between; padding-top:4px; }
    .shop-catalog .head nav a { font-size:13px; min-height:44px; white-space:nowrap; padding:11px 0; }
    .shop-catalog .head-actions { gap:6px; }
    .shop-catalog .cartbutton { padding:9px 12px; font-size:13px; }
    .shop-catalog .hero { margin:10px 10px 0; border-radius:20px; }
    .shop-catalog .hero-grid { grid-template-columns:1fr; padding:30px 22px 22px; gap:24px; }
    .shop-catalog .hero h1 { font-size:40px; margin:18px 0; }
    .shop-catalog .hero p { font-size:15px; }
    .shop-catalog .hero-actions { gap:9px; margin:22px 0; }
    .shop-catalog .hero-actions .button { min-height:48px; flex:1 1 44%; font-size:13px; padding:10px; }
    .shop-catalog .hero-actions .map-link { flex-basis:100%; min-height:44px; }
    .shop-catalog .hero-photo img { height:235px; }
    .shop-catalog .hero-note { font-size:12px; }
    .shop-catalog .category { min-height:118px; padding:18px 14px; }
    .shop-catalog .category-section,.shop-catalog .product-section { padding-top:42px; }
    .shop-catalog .sectiontop h2 { font-size:28px; }
    .shop-catalog .sectiontop { align-items:start; }
    .shop-catalog .download-grid { grid-template-columns:1fr; }
    .shop-catalog .doc-form,.shop-catalog .doc-items { padding:20px 16px; }
  }
}
