
    .page-header{padding:80px 0 48px;border-bottom:1px solid var(--border-color)}
    .page-header h1{font-family:var(--font-display);font-size:clamp(36px,5vw,64px);font-weight:700;letter-spacing:-.02em;margin-bottom:16px}
    .page-header p{font-size:clamp(16px,1.2vw,20px);color:var(--muted-color);max-width:65ch}
    .back-link{font-family:var(--font-display);font-size:14px;margin-bottom:32px;display:inline-block}
    /* Level tabs */
    .level-tabs{display:flex;gap:0;border-bottom:2px solid var(--border-color);margin-top:48px;font-family:var(--font-display);overflow-x:auto}
    .level-tab{padding:14px 28px;font-size:14px;font-weight:600;background:none;border:none;border-bottom:3px solid transparent;color:var(--muted-color);cursor:pointer;transition:all .2s;letter-spacing:.03em;text-transform:uppercase;margin-bottom:-2px;white-space:nowrap}
    .level-tab:hover{color:var(--text-color)}
    .level-tab.active{color:var(--text-color);border-bottom-color:var(--text-color)}
    .sub-tabs{margin-top:-1px;border-top:none}
    .sub-tabs .level-tab{font-size:13px;padding:10px 24px;letter-spacing:.02em}
    /* Bloc */
    .bloc{padding:48px 0;border-bottom:1px solid var(--border-color)}
    .bloc.hidden{display:none}
    .bloc-title{font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:-.01em;margin-bottom:32px}
    /* Discipline list */
    .disc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:48px}
    .disc-item{padding:20px 0;border-bottom:1px solid var(--border-color)}
    .disc-item:last-child{border-bottom:none}
    .disc-name{font-family:var(--font-display);font-size:16px;font-weight:600;margin-bottom:4px}
    .disc-sub{font-size:14px;color:var(--muted-color);line-height:1.6}
    .disc-link{font-family:var(--font-display);font-size:13px;font-weight:500;display:inline-block;margin-top:8px}
    /* Placeholder */
    .disc-item.placeholder{opacity:.35}
    .disc-item.placeholder .disc-name{border-bottom:none}
    .disc-propose{font-family:var(--font-display);font-size:13px;margin-top:6px}
    .disc-propose a{font-size:13px;cursor:pointer}
    /* Contribution modal */
    .contrib-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:500;align-items:center;justify-content:center}
    .contrib-overlay.open{display:flex}
    .contrib-modal{background:var(--bg-color);width:90%;max-width:560px;max-height:90vh;overflow:auto;padding:40px;position:relative}
    .contrib-modal h2{font-family:var(--font-display);font-size:20px;font-weight:700;margin-bottom:16px}
    .contrib-modal label{font-family:var(--font-display);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px;color:var(--muted-color);margin-top:12px}
    .contrib-modal input,.contrib-modal textarea,.contrib-modal select{width:100%;padding:10px 14px;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);font-family:var(--font-body);font-size:14px}
    .contrib-modal input:focus,.contrib-modal textarea:focus,.contrib-modal select:focus{outline:none;border-color:var(--text-color)}
    .contrib-modal textarea{min-height:100px;resize:vertical}
    .contrib-modal select{cursor:pointer}
    .contrib-submit{font-family:var(--font-display);font-size:14px;font-weight:600;padding:10px 24px;border:1px solid var(--text-color);background:var(--text-color);color:var(--bg-color);cursor:pointer;margin-top:16px}
    .contrib-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:24px;color:var(--muted-color);cursor:pointer;font-family:var(--font-display)}
    .contrib-status{font-family:var(--font-display);font-size:13px;margin-top:12px;padding:8px;display:none}
    .contrib-status.ok{display:block;border:1px solid #22c55e;color:#22c55e}
    .contrib-status.err{display:block;border:1px solid #ef4444;color:#ef4444}
    /* Footer */
    footer{border-top:1px solid var(--border-color);padding:48px 0}
    .footer-bottom{font-family:var(--font-display);font-size:13px;color:var(--muted-color)}
    @media(max-width:768px){.nav-center{display:none}.container{padding:0 24px}.page-header{padding:48px 0 32px}.disc-grid{grid-template-columns:1fr}}

/* Navigation pills — neumorphic */
.disc-nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.disc-nav-pill {
  font-family: var(--font-display, -apple-system, sans-serif);
  font-size: 13px;
  font-weight: 500;
  padding: 10px 18px;
  border-radius: var(--r-sm, 8px);
  border: none !important;
  background: var(--bg-color, #FFFFF8);
  color: var(--text-color, #111);
  text-decoration: none;
  box-shadow: none, -2px -2px 6px rgba(255,255,255,.7));
  transition: box-shadow .2s, transform .15s;
}
.disc-nav-pill:hover {
  border-color: var(--accent); box-shadow: var(--card-shadow-hover, none), -6px -6px 14px rgba(255,255,255,.7));
  transform: translateY(-1px);
}
body.dark .disc-nav-pill {
  background: #1a1a2e;
  color: #e8e8e0;
  box-shadow: none; border: 1px solid rgba(255,255,248,0.12);
}
