.publications-shell { max-width: 1240px; margin: 0 auto; overflow: hidden; border-right: 1px solid var(--line); border-left: 1px solid var(--line); }

.publications-hero { position: relative; overflow: hidden; padding: 24px clamp(28px, 7vw, 100px) 82px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 77% 31%, rgba(53, 223, 207, 0.18), transparent 18rem), linear-gradient(120deg, #06131f, #092433 72%, #0b2b3b); }.publications-hero::after { position: absolute; inset: 0; content: ""; pointer-events: none; opacity: 0.44; background-image: linear-gradient(rgba(145, 255, 241, 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(145, 255, 241, 0.06) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(90deg, transparent, #000 50%, transparent); }

.publications-nav, .publications-heading, .publication-stats { position: relative; z-index: 1; }.publications-nav { display: flex; justify-content: space-between; gap: 18px; font-size: 0.82rem; font-weight: 750; }.publications-nav a { color: var(--cyan-bright); }.publications-nav a:hover { color: #fff; }.publications-heading { max-width: 765px; padding-top: 89px; }.publications-heading h1 { margin-bottom: 23px; font-size: clamp(4rem, 8vw, 7.9rem); }.publications-heading > p:last-child { max-width: 560px; margin-bottom: 0; color: var(--muted); font-size: 1.05rem; }.publication-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 570px; margin: 56px 0 0; border-top: 1px solid rgba(145, 255, 241, 0.28); }.publication-stats div { padding: 16px 15px 0 0; }.publication-stats dt { color: var(--cyan); font-family: Georgia, "Times New Roman", serif; font-size: 2.1rem; font-weight: 700; letter-spacing: -0.04em; }.publication-stats dd { margin: -2px 0 0; color: var(--faint); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }

.publications-main { background: rgba(4, 17, 27, 0.64); }.publication-category { display: grid; grid-template-columns: minmax(180px, .42fr) minmax(0, 1.58fr); gap: 34px; padding: 74px clamp(28px, 7vw, 100px); border-bottom: 1px solid var(--line); }.publication-category:nth-child(even) { background: linear-gradient(90deg, rgba(87, 174, 233, 0.055), transparent 68%); }.category-heading { padding-top: 2px; }.category-heading p { margin-bottom: 11px; color: var(--cyan); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.7rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }.category-heading h2 { margin: 0; font-size: clamp(2.15rem, 4.1vw, 3.65rem); line-height: 0.94; letter-spacing: -0.055em; }.publications-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; counter-reset: publications; }.publication-item { position: relative; padding: 17px 22px 17px 57px; border: 1px solid rgba(145, 255, 241, 0.13); color: #c6d8dc; background: rgba(9, 33, 46, 0.55); font-size: 0.92rem; line-height: 1.7; counter-increment: publications; transition: border-color 0.2s ease, background 0.2s ease; }.publication-item::before { position: absolute; top: 20px; left: 19px; color: var(--cyan); content: counter(publications, decimal-leading-zero); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.73rem; font-weight: 800; }.publication-item:hover { border-color: rgba(53, 223, 207, 0.5); background: rgba(12, 47, 58, 0.78); }.publication-item strong { color: #efffff; }.publication-item em { color: var(--cyan-bright); }.patents-category .publication-item::before { color: var(--amber); }.patents-category { background: linear-gradient(90deg, rgba(255, 198, 90, 0.04), transparent 68%) !important; }

.publications-footer { display: flex; justify-content: space-between; gap: 20px; padding: 27px clamp(28px, 7vw, 100px) 32px; color: var(--faint); background: #05101a; font-size: 0.77rem; }.publications-footer p { margin: 0; }.publications-footer a { color: var(--cyan); font-weight: 750; }

.publication-item a { color: var(--cyan-bright); border-bottom: 1px solid rgba(145, 255, 241, 0.35); }.publication-item a:hover { color: #fff; border-color: #fff; }.publication-source { margin-left: 6px; font-size: 0.8rem; font-weight: 750; white-space: nowrap; }.publication-details { margin-top: 12px; color: var(--muted); font-size: 0.86rem; }.publication-details summary { width: max-content; max-width: 100%; color: var(--cyan); cursor: pointer; font-weight: 800; }.publication-details p { margin: 10px 0 0; }.publication-details p + p { margin-top: 6px; }

.year-groups { display: grid; gap: 36px; }.year-block { display: grid; grid-template-columns: 98px minmax(0, 1fr); gap: 22px; }.year-block + .year-block { padding-top: 35px; border-top: 1px solid rgba(145, 255, 241, 0.12); }.year-block h3 { position: sticky; top: 16px; align-self: start; margin: 0; color: var(--cyan); font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 0.9; letter-spacing: -0.06em; }.timeline-category .publication-item { padding-left: 24px; }.timeline-category .publication-item::before { top: 27px; left: 11px; width: 5px; height: 5px; border-radius: 50%; content: ""; background: var(--cyan); box-shadow: 0 0 10px rgba(53, 223, 207, 0.8); }.publication-type { display: inline-block; margin: 0 8px 4px 0; padding: 1px 6px; border: 1px solid rgba(87, 174, 233, 0.4); color: var(--blue); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.62rem; font-weight: 800; letter-spacing: 0.07em; line-height: 1.55; text-transform: uppercase; vertical-align: 1px; }

@media (max-width: 700px) { .publications-heading { padding-top: 70px; }.publications-heading h1 { font-size: clamp(2.8rem, 13.5vw, 3.7rem); overflow-wrap: anywhere; }.publication-category { grid-template-columns: 1fr; gap: 27px; padding-top: 58px; padding-bottom: 58px; }.publication-item { padding: 15px 16px 15px 50px; font-size: 0.88rem; }.publication-item::before { left: 15px; }.year-groups { gap: 28px; }.year-block { grid-template-columns: 1fr; gap: 15px; }.year-block + .year-block { padding-top: 28px; }.year-block h3 { position: static; font-size: 2.3rem; }.timeline-category .publication-item { padding-left: 24px; }.timeline-category .publication-item::before { left: 11px; }.publications-footer { flex-direction: column; }.publications-nav { font-size: 0.76rem; }.publication-stats { margin-top: 42px; } }
