/* Site-wide glass-style facelift. Purely additive/override layer loaded after web.css -
   does not remove or rename any existing class (rowtheme0/1, searchrow0/1, subrow0/1,
   editcaptstyle, etc. stay exactly as-is for admin/data-table pages not yet redesigned). */
:root{
  --tp-navy:#1f2d3d;
  --tp-gold:#b78f3f;
  --tp-glass-bg:rgba(255,255,255,0.6);
  --tp-glass-border:rgba(183,143,63,0.45);
}
html,body{
  background: linear-gradient(135deg,#e9edf2 0%,#cfd9e6 45%,#e9d9bf 100%) !important;
  background-attachment: fixed !important;
}
body{
  font-family: "Segoe UI","Tahoma",sans-serif;
}
@media (max-width:1220px){
  body{ overflow-x:auto; }
}

/* Header banner strip */
.tp-glass-header{
  background: rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--tp-glass-border);
}

/* Top nav */
ul.topnav{
  background: rgba(31,45,61,0.75) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(31,45,61,0.25);
}
ul.topnav li a{
  border-radius: 6px;
}
ul.topnav li a:hover{
  background: rgba(183,143,63,0.35) !important;
  border-radius: 6px;
}
ul.topnav li ul.subnav{
  background: rgba(40,40,40,0.92) !important;
  backdrop-filter: blur(8px);
  border-radius: 0 0 8px 8px;
  border: 1px solid var(--tp-glass-border) !important;
}

/* Login bar / logged-in bar glass pill */
.tp-authbar{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background: var(--tp-glass-bg);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid var(--tp-glass-border);
  border-radius: 999px;
  padding: 6px 14px;
}
.tp-authbar input.loginbox{
  border: 1px solid var(--tp-glass-border) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.8) !important;
  padding: 2px 10px !important;
  height:22px !important;
}
.tp-authbar input[type=button]{
  border: 1px solid var(--tp-gold) !important;
  border-radius: 999px !important;
  background: rgba(183,143,63,0.15) !important;
  color: var(--tp-navy) !important;
  padding: 2px 14px !important;
  cursor:pointer;
}
.tp-authbar input[type=button]:hover{
  background: rgba(183,143,63,0.35) !important;
}

/* Generic glass content card, used to wrap page bodies (homepage, howuse, aboutus, etc.) */
.tp-glass-card{
  background: var(--tp-glass-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--tp-glass-border);
  border-radius: 16px;
  box-shadow: 0 8px 28px rgba(31,45,61,0.15);
  padding: 18px;
}

/* Footer */
.tp-glass-footer{
  background: rgba(255,255,255,0.5) !important;
  backdrop-filter: blur(8px);
  border-top: 1px solid var(--tp-glass-border);
}

/* Dog result tiles (viewall.php, search grids) */
.tp-dog-tile{
  background: rgba(255,255,255,0.7) !important;
  border: 1px solid var(--tp-glass-border) !important;
  border-radius: 10px !important;
  box-shadow: 0 3px 10px rgba(31,45,61,0.1);
  transition: transform .15s ease, box-shadow .15s ease;
}
.tp-dog-tile:hover{
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(31,45,61,0.18);
}

/* Generic form inputs/buttons used across search/edit/signup/login forms */
.tp-glass-card input[type=text],
.tp-glass-card input[type=password],
.tp-glass-card input[type=email],
.tp-glass-card textarea,
.tp-glass-card select{
  border: 1px solid var(--tp-glass-border) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.75) !important;
  padding: 4px 8px !important;
}
.tp-glass-card input[type=submit],
.tp-glass-card input[type=button],
.tp-glass-card button{
  border: 1px solid var(--tp-gold) !important;
  border-radius: 999px !important;
  background: rgba(183,143,63,0.15) !important;
  color: var(--tp-navy) !important;
  cursor:pointer;
}
.tp-glass-card input[type=submit]:hover,
.tp-glass-card input[type=button]:hover,
.tp-glass-card button:hover{
  background: rgba(183,143,63,0.32) !important;
}

/* Onboarding / how-to-use step images */
.tp-glass-card img[src*="/images/step/"]{
  border-radius: 10px;
  border: 1px solid var(--tp-glass-border);
  box-shadow: 0 4px 14px rgba(31,45,61,0.12);
  margin: 6px 0 4px;
  max-width: 100%;
  height: auto;
}
.tp-glass-card .homedisplay strong{
  color: var(--tp-navy);
}

@media (max-width:768px){
  ul.topnav{ font-size: 0.85em; }
  .tp-glass-card{ border-radius: 12px; padding: 12px; }
  .tp-glass-card table[width]{ width:100% !important; }
  .tp-glass-card td[style*="width:500px"], .tp-glass-card td img[width]{ max-width:100%; height:auto; }
}

@media print{
  html,body{ background:#fff !important; }
  ul.topnav, .tp-authbar, .tp-glass-header{ display:none !important; }
}
