:root{
  /* Catppuccin Mocha essentials */
  --base:#1e1e2e;
  --crust:#11111b;

  --text:#cdd6f4;
  --subtext1:#bac2de;

  --mauve:#cba6f7;
  --lavender:#b4befe;
  --yellow:#f9e2af;

  --shadow: 0 20px 60px rgba(0,0,0,.45);
  --radius: 22px;
}

*{ box-sizing:border-box; }
html, body{ height:100%; }

body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color: var(--text);
  background:
    radial-gradient(1100px 560px at 50% 18%, rgba(203,166,247,.18), transparent 60%),
    linear-gradient(180deg, rgba(17,17,27,.25), rgba(17,17,27,.92)),
    var(--base);
}

.wrap{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding: 28px;
}

.card{
  width:min(980px, 96vw);
  padding: 26px 22px 22px;
  border-radius: var(--radius);
  background: rgba(24,24,37,.72);
  border: 1px solid rgba(127,132,156,.35);
  box-shadow: var(--shadow);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.back{
  display:inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  text-decoration:none;
  font-weight: 900;
  background: rgba(249,226,175,.92);
  color: var(--crust);
  border: 1px solid rgba(249,226,175,.65);
}

.title{
  margin: 16px 0 14px;
  font-size: clamp(40px, 5vw, 62px);
  letter-spacing: -0.04em;
  line-height: 1.02;
  color: var(--mauve);
  text-shadow: 0 0 24px rgba(203,166,247,.25);
}

.item{
  padding: 14px;
  border-radius: 16px;
  background: rgba(49,50,68,.55);
  border: 1px solid rgba(147,153,178,.22);
}

.item__meta{
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .02em;
  color: var(--lavender);
  margin-bottom: 6px;
}

.item__link{
  color: var(--text);
  text-decoration: none;
  border-bottom: 1px dashed rgba(180,190,254,.45);
  font-weight: 700;
}

.pgp{
  margin-top: 12px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(49,50,68,.40);
  border: 1px solid rgba(147,153,178,.22);
}

.pgp__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.pgp__meta{
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .02em;
  color: var(--lavender);
}

.pgp__title{
  margin-top: 4px;
  font-weight: 900;
  color: var(--subtext1);
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-weight: 900;
  border-radius: 999px;
  border: 1px solid rgba(249,226,175,.65);
}

.btn--yellow{
  background: rgba(249,226,175,.92);
  color: var(--crust);
}

.btn--small{
  padding: 6px 10px;
  font-size: 13px;
}

.pgp__key{
  width:100%;
  border-radius: 14px;
  border: 1px solid rgba(147,153,178,.22);
  background: rgba(24,24,37,.55);
  color: var(--text);
  padding: 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 12.5px;
  line-height: 1.35;
  resize: vertical;
}

.hint{
  margin: 8px 0 0;
  color: var(--subtext1);
  font-size: 13px;
}

