body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  color: #222;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, "Helvetica Neue", sans-serif;
  line-height: 1.5;
}

a {
  color: #1a73e8;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

name {
  font-size: 34px;
  font-weight: 700;
  letter-spacing: 0.2px;
}

heading {
  font-size: 22px;
  font-weight: 700;
}

papertitle {
  font-size: 16.5px;
  font-weight: 700;
}

p, li {
  font-size: 15px;
}

ul {
  margin-top: 10px;
  margin-bottom: 0px;
}

.links a {
  margin-right: 10px;
}

.authors {
  margin-top: 6px;
  margin-bottom: 10px;
}

.stack {
  color: #555;
  font-size: 14px;
  margin-top: 8px;
  margin-bottom: 8px;
}

.note {
  color: #666;
  font-size: 13.5px;
}
img {
  display: block;
}
code {
  background: #f3f3f3;
  padding: 2px 6px;
  border-radius: 6px;
}
/* ===== CAD collage cards ===== */
/* ===== CAD collage cards (compact) ===== */
.cad-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-top:12px;
}

.cad-card{
  position:relative;
  display:block;
  border-radius:12px;
  overflow:hidden;
  background:#f6f6f6;
  box-shadow: 0 6px 16px rgba(0,0,0,0.10);
  transition: transform 140ms ease, box-shadow 140ms ease;
}

.cad-card img{
  width:100%;
  height:120px;        /* smaller */
  object-fit:cover;
  display:block;
}

.cad-overlay{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:8px 10px;
  background: linear-gradient(to top, rgba(0,0,0,0.72), rgba(0,0,0,0.00));
  color:#fff;
}

.cad-title{
  font-size:13px;
  font-weight:700;
  line-height:1.15;
}

.cad-sub{
  font-size:11px;
  opacity:0.9;
  margin-top:2px;
}

.cad-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(0,0,0,0.14);
}

/* ===== Patent card ===== */
.patent-card{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:16px 18px;
  border-radius:14px;
  background:#fafafa;
  border:1px solid #e6e6e6;
}

.patent-icon{
  font-size:22px;
  line-height:1;
  margin-top:2px;
}

.patent-content{
  flex:1;
}

.patent-title{
  font-size:16px;
  font-weight:700;
  margin-bottom:6px;
}

.patent-authors{
  font-size:14px;
  color:#444;
  margin-bottom:4px;
}

.patent-status{
  font-size:13px;
  color:#666;
  font-style:italic;
}

/* Responsive */
@media (max-width: 900px){
  .cad-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cad-card img{ height:130px; }
}
@media (max-width: 520px){
  .cad-grid{ grid-template-columns: 1fr; }
  .cad-card img{ height:160px; }
}
