@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,400;1,500&family=Syne:wght@400;500;600&display=swap');

/* The personal side keeps its original type and mauve / rose palette.
   This sheet is deliberately not loaded by the professional profile. */
body[data-page='personal'], body.lobby { --sans: 'Syne', sans-serif; }
.personal-logo { font: italic 30px 'Cormorant Garamond', Georgia, serif; color: var(--accent); }
.personal-sidebar { position: fixed; inset: 0 auto 0 0; width: 224px; padding: 28px 24px; background: var(--surface); border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.sidebar-note { color: var(--secondary); font: 11px/1.7 var(--mono); margin-top: 8px; }
.personal-sidebar .personal-nav { display: flex; flex-direction: column; gap: 4px; margin: 32px -12px 24px; padding: 0; border: 0; }
.personal-sidebar .personal-nav a { padding: 10px 12px; font-size: 14px; color: var(--secondary); border: 0; text-decoration: none; }
.personal-sidebar .personal-nav a:hover { background: var(--hover); color: var(--text); }
.personal-sidebar .personal-nav a[aria-current] { background: var(--hover); color: var(--accent); box-shadow: inset 2px 0 var(--accent); }
.sidebar-bottom { margin-top: auto; display: grid; gap: 14px; font-size: 12px; }
.sidebar-bottom .language-switch { border: 0; padding: 0; }
.personal-main.wrap { margin-left: 224px; width: calc(100% - 224px); max-width: 1350px; padding: 48px 56px; min-height: calc(100vh - 85px); }
body[data-page='personal'] .site-footer { margin-left: 224px; }
body[data-page='personal'] .footer-inner { gap: 20px; flex-wrap: wrap; }
body[data-page='personal'] .page-title { font: italic 500 clamp(38px, 4vw, 60px)/1.1 'Cormorant Garamond', Georgia, serif; letter-spacing: -.5px; }
body[data-page='personal'] .personal-panel { padding-top: 0; }
.welcome-terminal { max-width: 560px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); font: 12px/1.8 var(--mono); }
.terminal-bar { padding: 8px 18px; border-bottom: 1px solid var(--line); color: var(--secondary); }
.terminal-content { padding: 16px 18px; }
.terminal-prompt { color: var(--accent); }
.terminal-content dl { margin: 12px 0 0; }
.terminal-content dl div { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 8px; }
.terminal-content dt { color: var(--secondary); }
.terminal-content dd { margin: 0; overflow-wrap: anywhere; }
.terminal-content dd span { color: var(--muted); }
.personal-greeting { font: italic 400 clamp(64px, 7vw, 110px)/.95 'Cormorant Garamond', Georgia, serif; letter-spacing: -2px; margin: 40px 0 24px; }
.home-note { max-width: 340px; font: 13px/1.9 var(--mono); color: var(--secondary); }
.home-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 28px; }
.home-postscript { color: var(--muted); font: 12px/1.8 var(--mono); margin-top: 40px; }
body[data-page='personal'] .project-heading h3 { font-size: 19px; }
body[data-page='personal'] .project-description { font-size: 14px; }
body[data-page='personal'] .projects { gap: 32px; }
.lobby { min-height: 100svh; display: flex; flex-direction: column; }
.lobby-header { display: flex; justify-content: space-between; align-items: center; padding: 24px 40px; }
.lobby-main { width: min(760px, calc(100% - 48px)); margin: auto; padding: 48px 0 64px; }
.lobby-main > h1 { font: italic 400 clamp(80px, 12vw, 128px)/1 'Cormorant Garamond', Georgia, serif; text-align: center; }
.lobby-main > h1 span { color: var(--accent); }
.lobby-intro { text-align: center; color: var(--secondary); margin: 16px 0 48px; }
.lobby-main > h2 { font: 14px var(--mono); color: var(--secondary); margin-bottom: 20px; text-align: center; }
.lobby-choices { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.lobby-choice { display: flex; flex-direction: column; gap: 18px; border: 1px solid var(--line); border-radius: 6px; padding: 28px; background: var(--surface); transition: border-color 150ms; }
.lobby-choice:hover { border-color: var(--accent); }
.lobby-choice h3 { display: flex; justify-content: space-between; font-size: 28px; }
.lobby-choice h3 span { color: var(--muted); font-size: 22px; }
.lobby-choice p { font-size: 14px; color: var(--secondary); }
.lobby-enter { margin-top: auto; padding-top: 16px; font: 12px/1.7 var(--mono); color: var(--accent); }
:root:not([data-theme='light']) .lobby-choice--personal .lobby-enter { color: #f5b8d4; }
.lobby-footer { display: flex; justify-content: center; flex-wrap: wrap; gap: 28px; padding: 24px; font: 12px var(--mono); color: var(--secondary); }
@media (max-width: 1000px) {
  .personal-main.wrap { padding: 32px; }
  body[data-page='personal'] .about-layout, body[data-page='personal'] .now-layout, body[data-page='personal'] .guestbook-layout { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 700px) {
  .personal-sidebar { position: static; width: 100%; padding: 20px 24px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .sidebar-note { display: none; }
  .personal-sidebar .personal-nav { flex-direction: row; flex-wrap: wrap; gap: 2px; margin: 16px -10px; }
  .personal-sidebar .personal-nav a { padding: 8px 10px; font-size: 13px; }
  .sidebar-bottom { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 20px; padding-bottom: 12px; }
  .sidebar-bottom .language-switch { margin-left: auto; }
  .personal-main.wrap { width: 100%; margin: 0; padding: 28px 24px; min-height: 60vh; }
  body[data-page='personal'] .site-footer { margin: 0; }
  body[data-page='personal'] .site-footer .wrap { width: calc(100% - 48px); }
  body[data-page='personal'] .projects { grid-template-columns: 1fr; }
  .personal-greeting { font-size: clamp(56px, 12vw, 84px); }
  .lobby-header { padding: 20px 24px; }
  .lobby-main { padding-top: 24px; }
  .lobby-choices { grid-template-columns: 1fr; gap: 16px; }
  .lobby-intro { margin-bottom: 32px; }
  .lobby-choice { padding: 24px; }
}
