/* Professional modern styling */
:root{
  --bg:#f8f9fa;
  --box:#e8f4f8;
  --accent:#0066cc;
  --accent-hover:#0052a3;
  --accent-light:#e6f2ff;
  --ink:#1a1a1a;
  --muted:#6c757d;
  --border:#dee2e6;
  --card:#ffffff;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.08);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.1);
  --shadow-lg: 0 8px 24px rgba(0,0,0,0.12);
}

*{box-sizing:border-box}
html,body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--ink);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  line-height:1.6;
  font-size:16px;
}

.site-header{
  display:flex;
  gap:24px;
  align-items:center;
  justify-content:center;
  padding:32px 40px;
  background:linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
  border-bottom:2px solid var(--border);
  box-shadow:var(--shadow-sm);
}
.header-img{
  width:120px;
  height:120px;
  object-fit:cover;
  border-radius:16px;
  border:3px solid var(--accent);
  background:#fff;
  box-shadow:var(--shadow-md);
}
.header-text h1{
  font-family:Oswald,Inter,sans-serif;
  margin:0 0 8px 0;
  color:#0066cc;
  font-size:clamp(1.5rem, 3vw, 2.25rem);
  font-weight:600;
  letter-spacing:-0.5px;
}
.header-text h3{
  font-family:Inter,sans-serif;
  margin:0;
  color:var(--muted);
  font-size:1.05rem;
  font-weight:400;
}
.header-text p{
  margin:0;
  color:var(--muted);
  font-size:1.05rem;
  font-weight:400;
}

.day-nav{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  padding:16px 40px;
  position:sticky;
  top:0;
  background:rgba(255,255,255,0.95);
  backdrop-filter: blur(10px);
  border-bottom:2px solid var(--border);
  z-index:100;
  box-shadow:var(--shadow-sm);
  justify-content:center;
}
.day-btn{
  font-family:Inter,sans-serif;
  border:2px solid var(--accent);
  background:var(--accent);
  color:white;
  padding:10px 20px;
  border-radius:8px;
  cursor:pointer;
  transition:all 0.2s ease;
  font-weight:600;
  font-size:0.95rem;
  letter-spacing:0.3px;
}
.day-btn:hover{
  background:var(--accent-hover);
  border-color:var(--accent-hover);
  transform:translateY(-2px);
  box-shadow:var(--shadow-md);
}

.content-box{
  width:min(1200px, 94%);
  margin:32px auto;
  padding:32px;
  background:var(--card);
  border:none;
  border-radius:16px;
  box-shadow:var(--shadow-md);
}

.day-box{
  margin:24px 0 32px;
  padding:20px 24px;
  background:transparent;
  border-radius:12px;
  text-align:left;
}
.day-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:16px;
  margin-bottom:20px;
}
.day-box h2{
  margin:0;
  font-family:Oswald,Inter,sans-serif;
  color:#55616a;
  font-size:1.75rem;
  font-weight:600;
  letter-spacing:-0.5px;
}
.session-filter{
  display:flex;
  align-items:center;
  gap:8px;
  position:relative;
}
.session-select{
  padding:8px 32px 8px 16px;
  border:2px solid var(--border);
  border-radius:8px;
  background:white;
  color:var(--ink);
  font-family:Inter,sans-serif;
  font-size:0.9rem;
  font-weight:500;
  cursor:pointer;
  transition:all 0.2s ease;
  outline:none;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236c757d' d='M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:12px;
}
.session-select:hover{
  border-color:var(--accent-hover);
  box-shadow:var(--shadow-sm);
}
.session-select:focus{
  border-color:var(--accent-hover);
  box-shadow:var(--shadow-md);
}

.session-box{
  background:#fafbfc;
  border:2px solid var(--border);
  border-radius:12px;
  padding:24px;
  margin:20px 0;
  box-shadow:var(--shadow-sm);
  transition:all 0.2s ease;
}
.session-box:hover{
  box-shadow:var(--shadow-md);
  border-color:var(--accent);
}
.session-meta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:var(--muted);
  margin-bottom:20px;
  padding-bottom:16px;
  border-bottom:1px solid var(--border);
}
.session-meta span{
  background:var(--card);
  border:1px solid var(--border);
  padding:8px 14px;
  border-radius:6px;
  font-size:0.9rem;
  font-weight:500;
}
.session-meta span strong{
  color:var(--accent);
  font-weight:700;
}
.session-meta .workshop-title{
  background:var(--accent-light);
  border:2px solid var(--accent);
  color:var(--accent);
  font-weight:600;
  font-style:italic;
  flex-basis:100%;
}

.paper-card{
  border:1px solid var(--border);
  border-radius:10px;
  padding:20px;
  margin:16px 0;
  background:var(--card);
  transition:all 0.3s ease;
}
.paper-card:hover{
  box-shadow:var(--shadow-lg);
  transform:translateY(-2px);
  border-color:var(--accent);
}
.paper-header{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:10px;
}
.paper-id{
  display:inline-block;
  padding:2px 8px;
  background:#f0f4ff;
  color:#0066cc;
  border-radius:4px;
  font-size:0.8rem;
  font-weight:600;
  font-family:'Inter', sans-serif;
  letter-spacing:0.2px;
  white-space:nowrap;
  flex-shrink:0;
  border:1.5px solid #0066cc;
  min-width:45px;
  text-align:center;
  transition:all 0.2s ease;
}
.paper-card:hover .paper-id{
  background:#0066cc;
  color:white;
  transform:translateY(-1px);
  box-shadow:0 2px 6px rgba(0, 102, 204, 0.25);
}
.paper-title{
  font-weight:600;
  margin:0;
  color:var(--accent);
  font-size:1.1rem;
  line-height:1.4;
  flex:1;
}
.paper-authors{
  color:var(--muted);
  margin:0;
  font-size:0.95rem;
  line-height:1.5;
}
.mode-chip{
  display:inline-block;
  padding:4px 10px;
  border-radius:4px;
  font-size:0.75rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.5px;
  white-space:nowrap;
  flex-shrink:0;
}
.mode-online{
  background:#e3f2fd;
  color:#1976d2;
  border:1px solid #bbdefb;
}
.author-affiliation{
  font-style:italic;
  background-color:var(--accent-light);
  padding:3px 8px;
  border-radius:4px;
}

.paper-abstract{
  color:#495057;
  margin:12px 0 0;
  font-size:0.95rem;
  line-height:1.6;
  padding:12px;
  background:#f8f9fa;
  border-left:3px solid var(--border);
  border-radius:4px;
  transition:all 0.3s ease;
}
.paper-abstract.hidden{
  display:none;
}
.paper-abstract strong{
  color:var(--ink);
  font-weight:600;
}
.toggle-abstract{
  background:transparent;
  border:1px solid var(--accent);
  color:var(--accent);
  padding:6px 14px;
  border-radius:6px;
  cursor:pointer;
  font-size:0.85rem;
  font-weight:500;
  transition:all 0.2s ease;
  margin-bottom:8px;
}
.toggle-abstract:hover{
  background:var(--accent-light);
}
.slides-box{
  display:inline-block;
  padding:10px 20px;
  border-radius:8px;
  border:2px solid var(--accent);
  text-decoration:none;
  color:var(--accent);
  font-weight:600;
  transition:all 0.2s ease;
  font-size:0.9rem;
}
.slides-box:hover{
  background:var(--accent);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:var(--shadow-md);
}

.site-footer{
  padding:32px;
  text-align:center;
  color:#9ca3af;
  background:#f8f9fa;
  border-top:2px solid var(--border);
  margin-top:48px;
  font-size:0.85rem;
  font-weight:400;
}

/* Responsive design improvements */
@media (max-width: 768px) {
  .site-header{
    padding:20px;
    gap:16px;
  }
  .header-img{
    width:80px;
    height:80px;
  }
  .header-text h1{
    font-size:1.5rem;
  }
  .day-nav{
    padding:12px 20px;
  }
  .content-box{
    padding:20px;
    margin:20px auto;
  }
  .session-box{
    padding:16px;
  }
  .paper-card{
    padding:16px;
  }
}
