/* Site Theme: 丹波篠山ガイド (Material-inspired) */
:root{
  /* Material 3-like palette (light theme) */
  --md-primary:#2962ff;           /* Blue A700 */
  --md-on-primary:#ffffff;
  --md-primary-container:#e1e7ff;  /* Tonal */
  --md-on-primary-container:#001a72;

  --md-secondary:#455a64;          /* Blue Grey 700 */
  --md-on-secondary:#ffffff;
  --md-secondary-container:#dfe4e7;
  --md-on-secondary-container:#151d21;

  --md-surface:#ffffff;
  --md-surface-variant:#f5f7fb;    /* subtle surface */
  --md-on-surface:#1f2937;         /* gray-800 */
  --md-outline:#e5e7eb;            /* border */

  --radius-lg:16px;
  --radius-md:12px;
  --radius-sm:8px;

  /* Elevation (Material-like) */
  --elev-0: none;
  --elev-1: 0 1px 2px rgba(0,0,0,.06), 0 1px 3px rgba(0,0,0,.1);
  --elev-2: 0 2px 6px rgba(0,0,0,.08), 0 2px 8px rgba(0,0,0,.08);
  --elev-3: 0 4px 10px rgba(0,0,0,.08), 0 6px 20px rgba(0,0,0,.1);
}

[data-bs-theme="light"]{
  --bs-primary: #2962ff;
  --bs-primary-rgb: 41,98,255;
  --bs-link-color: #2962ff;
  --bs-link-hover-color: #2554ff;
  --bs-primary-text-emphasis: #1939b7;
  --bs-primary-bg-subtle: #e7edff;
  --bs-primary-border-subtle: #b3c5ff;
}
html,body{background:var(--md-surface);color:var(--md-on-surface);} 
body{font-family:"Noto Sans JP","Roboto","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;}

/* Navbar (app bar) */
.navbar.bg-body{background-color:var(--md-surface) !important;border-bottom:1px solid var(--md-outline);} 
.navbar.shadow-sm{box-shadow:var(--elev-1)!important;}
.navbar .navbar-brand{font-weight:700;}

/* Hero */
.site-hero{background:linear-gradient(180deg, var(--md-primary-container) 0%, var(--md-surface) 60%);border-bottom:1px solid var(--md-outline);} 
.site-hero .lead{color:#4b5563;} 

/* Cards */
.card{border:1px solid var(--md-outline);border-radius:var(--radius-lg);box-shadow:var(--elev-0);transition:box-shadow .2s ease, transform .2s ease;}
.card:hover{box-shadow:var(--elev-2);}
.card .card-img-top, .card .rounded-start{border-top-left-radius:var(--radius-lg)!important;border-top-right-radius:var(--radius-lg)!important;} 
.card .rounded-start{border-top-right-radius:0!important;border-bottom-left-radius:var(--radius-lg)!important;}

/* Buttons (filled & outlined) */
.btn{border-radius:var(--radius-md);font-weight:600;}
.btn-primary{background-color:var(--md-primary);color:var(--md-on-primary);border:1px solid transparent;box-shadow:var(--elev-1);} 
.btn-primary:hover{background-color:#2554ff;box-shadow:var(--elev-2);} 
.btn-primary:focus{outline:2px solid rgba(41,98,255,.3);outline-offset:2px;}
.btn-outline-primary{color:var(--md-primary);border-color:var(--md-primary);} 
.btn-outline-primary:hover{background-color:var(--md-primary-container);}

/* Chips (badges) */
.badge{border-radius:var(--radius-sm);padding:.25rem .5rem;font-weight:600;border:1px solid var(--md-outline);background:var(--md-surface-variant);color:#1f2937;}
.badge.bg-primary-subtle,.badge.bg-secondary-subtle{background:var(--md-surface-variant)!important;color:#1f2937!important;border:1px solid var(--md-outline)!important;}
.badge.bg-primary{background:var(--md-primary)!important;color:var(--md-on-primary)!important;border:1px solid transparent!important;}

/* Content width & typography */
main.container{max-width:1040px;} 
.lead{font-weight:500;} 

/* Links */
.link-primary{color:var(--md-primary)!important;}
.link-primary:hover{color:#2554ff!important;}

/* Footer */
footer{border-top:1px solid var(--md-outline);background:var(--md-surface-variant);} 
footer .list-inline-item a{color:#6b7280;text-decoration:none;} 
footer .list-inline-item a:hover{color:var(--md-on-surface);} 

/* Utilities */
.shadow-xs{box-shadow:var(--elev-1);} 
.rounded-lg{border-radius:var(--radius-lg)!important;} 

/* Blog loop interactions */
.blog-loop-item{transition:transform .2s ease;} 
.blog-loop-item:hover{transform:translateY(-2px);} 

/* Breadcrumbs */
.bg-body-tertiary{background-color:var(--md-surface-variant)!important;}
.breadcrumb .breadcrumb-item a{color:#374151;}
.breadcrumb .breadcrumb-item.active{color:#6b7280;}
