.public-tool-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
  padding: 9px 14px;
  border: 1px solid var(--border-color);
  border-radius: 14px;
  background: var(--bg-card);
  box-shadow: var(--shadow-card);
}
.public-tool-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--text-primary);
  font-size: 1.05rem;
  font-weight: 900;
  text-decoration: none;
  direction: ltr;
}
.public-tool-brand img { width: 38px; height: 38px; object-fit: contain; }
.public-tool-brand span { color: var(--text-primary); letter-spacing: -.03em; }
.public-tool-links { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.public-tool-links a {
  padding: 6px 9px;
  border-radius: 8px;
  color: var(--text-secondary);
  font-size: .75rem;
  font-weight: 750;
  text-decoration: none;
}
.public-tool-links a:hover,
.public-tool-links a:focus-visible {
  background: rgba(8,145,178,.1);
  color: #0891b2;
  outline: 0;
}
.public-tool-links a[aria-current="page"] {
  color: #0891b2;
  background: rgba(8,145,178,.1);
}
.public-tool-actions { display:flex;align-items:center;gap:7px; }
.public-tool-actions > a,
.public-tool-actions .public-tool-logout,
.public-tool-theme {
  display:inline-flex;
  min-height:36px;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:6px 10px;
  border:1px solid var(--border-color);
  border-radius:9px;
  color:var(--text-secondary);
  background:var(--bg-card);
  font-size:.73rem;
  font-weight:750;
  text-decoration:none;
  white-space:nowrap;
}
.public-tool-logout-form { margin:0; }
.public-tool-actions .public-tool-logout { cursor:pointer; }
.public-tool-theme { cursor:pointer; }
.public-tool-theme:hover,
.public-tool-login:hover { color:#0891b2;border-color:rgba(8,145,178,.35);background:rgba(8,145,178,.08); }
.public-tool-actions .public-tool-start {
  border: 1px solid rgba(8,145,178,.3);
  background:#0891b2;
  color:#fff;
}
.public-tool-actions .public-tool-start:hover { color:#fff;background:#0e7490; }
.public-tool-content {
  margin-top: 24px;
  padding: clamp(18px,3vw,28px);
  border: 1px solid var(--border-color);
  border-radius: 18px;
  background: var(--bg-card);
  box-shadow: var(--shadow-card);
}
.public-tool-content > header { max-width: 850px; margin-bottom: 18px; }
.public-tool-content > header > span {
  color: #0891b2;
  font-size: .72rem;
  font-weight: 850;
}
.public-tool-content h2 {
  margin: 5px 0 7px;
  color: var(--text-primary);
  font-size: clamp(1.05rem,2.2vw,1.3rem);
}
.public-tool-content > header p,
.public-tool-content article p,
.public-tool-content details p {
  margin: 0;
  color: var(--text-secondary);
  font-size: .8rem;
  line-height: 1.95;
}
.public-tool-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
}
.public-tool-grid article {
  padding: 14px;
  border: 1px solid var(--border-color);
  border-radius: 12px;
  background: var(--bg-body);
}
.public-tool-grid h3 { margin: 0 0 6px; color: var(--text-primary); font-size: .88rem; }
.public-tool-grid h3 i { margin-left: 5px; color: #0891b2; }
.public-tool-faq { margin-top: 18px; }
.public-tool-faq > h2 { margin-bottom: 10px; font-size: 1rem; }
.public-tool-faq details {
  border-top: 1px solid var(--border-color);
  padding: 10px 2px;
}
.public-tool-faq summary {
  color: var(--text-primary);
  cursor: pointer;
  font-size: .82rem;
  font-weight: 800;
}
.public-tool-faq details p { padding: 8px 0 1px; }
.public-tool-related {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 17px;
  padding-top: 14px;
  border-top: 1px solid var(--border-color);
}
.public-tool-related > strong { color: var(--text-secondary); font-size: .78rem; }
.public-tool-related a {
  padding: 6px 10px;
  border: 1px solid rgba(8,145,178,.22);
  border-radius: 999px;
  color: #0891b2;
  font-size: .75rem;
  font-weight: 750;
  text-decoration: none;
}
.public-tool-disclaimer {
  margin-top: 15px !important;
  padding: 10px 12px;
  border-right: 3px solid #f59e0b;
  background: rgba(245,158,11,.07);
  border-radius: 8px;
}
@media (max-width: 800px) {
  .public-tool-grid { grid-template-columns: 1fr; }
  .public-tool-nav { flex-wrap:wrap; }
  .public-tool-links { order:3;width:100%;justify-content:center;border-top:1px solid var(--border-color);padding-top:7px; }
}
@media (max-width: 620px) {
  .public-tool-nav { align-items:center; }
  .public-tool-links { gap:1px;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none; }
  .public-tool-links::-webkit-scrollbar { display:none; }
  .public-tool-links a { flex:0 0 auto;padding:5px 6px;font-size:.68rem; }
  .public-tool-actions { margin-right:auto; }
  .public-tool-actions .public-tool-login span,
  .public-tool-theme span { display:none; }
  .public-tool-actions .public-tool-start { padding-inline:8px; }
}
@media (max-width: 420px) {
  .public-tool-links a { padding-inline:7.5px;font-size:.7rem; }
}
