/* ============================================================
   04 孟菲斯 / Memphis Group · 1981—1987
   波浪线 / 五彩纸屑 / 歪斜的糖果色卡片 / 黑描边
   ============================================================ */
:root[data-theme="memphis"] {
  --paper: #fff4e4;
  --butter: #fff4e4;
  --sky: #fff4e4;
  --ink: #121112;
  --rose: #ff72a2;
  --pink: #ff72a2;
  --wine: #03a4a4;
  --mm-teal: #03a4a4;
  --mm-blue: #2f5bff;
  --mm-yellow: #ffc73d;
  --mm-lilac: #c9b6f5;
  --mm-line: #121112;
}

/* 波浪线：整段分隔用一条 SVG 蓝线 */
:root[data-theme="memphis"] .flow,
:root[data-theme="memphis"] .ticker { background: var(--mm-teal); color: var(--paper); }
:root[data-theme="memphis"] .foot { background: var(--mm-line); color: var(--paper); }

:root[data-theme="memphis"] .hero { position: relative; overflow: hidden; }
:root[data-theme="memphis"] .hero::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 8%;
  height: 26px;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='26' viewBox='0 0 120 26'%3E%3Cpath d='M0 13 Q15 0 30 13 T60 13 T90 13 T120 13' fill='none' stroke='%232f5bff' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-size: 120px 26px;
}
:root[data-theme="memphis"] .hero .plate { position: relative; z-index: 1; }

/* 纸屑：用小径向 + 线性渐变做散点 */
:root[data-theme="memphis"] .about::before {
  background: var(--mm-yellow);
  border: 2px solid var(--mm-line);
  transform: translate(28%, -30%) rotate(18deg);
}
:root[data-theme="memphis"] .about::after {
  content: "";
  position: absolute;
  left: 4%;
  bottom: 6%;
  width: 110px;
  height: 110px;
  background-image:
    radial-gradient(var(--mm-teal) 45%, transparent 46%),
    radial-gradient(var(--rose) 45%, transparent 46%),
    radial-gradient(var(--mm-blue) 45%, transparent 46%);
  background-size: 26px 26px, 26px 26px, 26px 26px;
  background-position: 0 0, 13px 13px, 26px 4px;
  background-repeat: no-repeat;
  opacity: .85;
  pointer-events: none;
}

/* 标题：粉色 + 黑描边，像马克笔 */
:root[data-theme="memphis"] .display { letter-spacing: -.02em; }
:root[data-theme="memphis"] .display em,
:root[data-theme="memphis"] .hero__title em {
  color: var(--rose);
  -webkit-text-stroke: 1.5px var(--mm-line);
  paint-order: stroke fill;
  text-shadow: 4px 4px 0 var(--mm-line);
}
:root[data-theme="memphis"] .display--light { color: var(--paper); }
:root[data-theme="memphis"] .display--light em { color: var(--mm-yellow); -webkit-text-stroke: 1.5px var(--mm-line); }

/* 药丸标签：糖果色 + 2px 黑边 + 硬阴影 + 轻微歪斜 */
:root[data-theme="memphis"] .chips li {
  transform: rotate(-2.5deg);
  border: 2px solid var(--mm-line);
  border-radius: 999px;
  box-shadow: 3px 3px 0 var(--mm-line);
  background: var(--mm-yellow);
  color: var(--mm-line);
  font-weight: 800;
  padding: 8px 16px;
}
:root[data-theme="memphis"] .chips li:nth-child(2) { background: var(--mm-teal); transform: rotate(1.5deg); }
:root[data-theme="memphis"] .chips li:nth-child(3) { background: var(--mm-lilac); transform: rotate(-1deg); }
:root[data-theme="memphis"] .chips li:nth-child(4) { background: var(--rose); transform: rotate(2.5deg); }
:root[data-theme="memphis"] .chips li:hover { transform: rotate(0deg) scale(1.04); box-shadow: 5px 5px 0 var(--mm-line); }

:root[data-theme="memphis"] .btn,
:root[data-theme="memphis"] .copybtn,
:root[data-theme="memphis"] .brand,
:root[data-theme="memphis"] .menu__link--cta {
  border: 2px solid var(--mm-line);
  border-radius: 10px;
  box-shadow: 4px 4px 0 var(--mm-line);
  transform: rotate(-1.5deg);
}
:root[data-theme="memphis"] .btn { background: var(--mm-yellow); color: var(--mm-line); }
:root[data-theme="memphis"] .btn:hover { background: var(--mm-blue); transform: rotate(1.5deg) translate(-1px, -1px); box-shadow: 6px 6px 0 var(--mm-line); }
:root[data-theme="memphis"] .btn > * { transform: none; }
:root[data-theme="memphis"] .ghostlink { color: var(--mm-teal); }

:root[data-theme="memphis"] .kicker { color: var(--mm-line); letter-spacing: .1em; }
:root[data-theme="memphis"] .kicker b { color: var(--mm-teal); }
:root[data-theme="memphis"] .kicker--light { color: var(--paper); }
:root[data-theme="memphis"] .kicker--light b { color: var(--mm-yellow); }

/* 卡片：歪一点，彩色投影 */
:root[data-theme="memphis"] .art__slab {
  left: 0;
  top: 18%;
  width: 82%;
  padding-bottom: 60%;
  border-radius: 14px;
  border: 2px solid var(--mm-line);
  background: var(--mm-teal);
  transform: rotate(-6deg);
  box-shadow: 8px 8px 0 var(--rose);
}
:root[data-theme="memphis"] .art__ring { display: none; }
:root[data-theme="memphis"] .art__cube {
  width: 22%;
  background: var(--mm-yellow);
  border: 2px solid var(--mm-line);
  border-radius: 6px;
  --rest: rotate(14deg);
}
:root[data-theme="memphis"] .art__pip {
  width: clamp(38px, 11%, 62px);
  background: var(--mm-lilac);
  border: 2px solid var(--mm-line);
}
:root[data-theme="memphis"] .art__frame {
  border: 2px solid var(--mm-line);
  border-radius: 10px;
  box-shadow: 9px 9px 0 var(--rose);
  --rest: rotate(-4deg);
}
:root[data-theme="memphis"] .art__tag { background: var(--mm-yellow); color: var(--mm-line); border: 2px solid var(--mm-line); border-radius: 6px; transform: rotate(3deg); }
:root[data-theme="memphis"] .art__tag span { color: var(--mm-line); }
:root[data-theme="memphis"] .art__badge { display: none; }
:root[data-theme="memphis"] .hero__stamp { color: var(--mm-teal); }

:root[data-theme="memphis"] .topbar { border-bottom: 2px solid var(--mm-line); }
:root[data-theme="memphis"] .topbar.is-stuck { background: var(--paper); backdrop-filter: none; }
:root[data-theme="memphis"] .menu__link--cta[aria-current="true"] { background: var(--mm-yellow); color: var(--mm-line); }

:root[data-theme="memphis"] .rows { border-top: 2px solid var(--mm-line); }
:root[data-theme="memphis"] .rows__item { border-bottom: 2px solid var(--mm-line); }
:root[data-theme="memphis"] .row::before { background: var(--mm-teal); }
:root[data-theme="memphis"] .row:hover, :root[data-theme="memphis"] .row:focus-visible { color: var(--paper); }
:root[data-theme="memphis"] .row__idx { color: var(--mm-blue); }
:root[data-theme="memphis"] .row__name { color: var(--mm-line); }
:root[data-theme="memphis"] .row:hover .row__name { color: #fff; }

:root[data-theme="memphis"] .acc { border-top: 2px solid var(--mm-line); }
:root[data-theme="memphis"] .acc__item { border-bottom: 2px solid var(--mm-line); }
:root[data-theme="memphis"] .acc__btn:hover { background: var(--mm-lilac); }
:root[data-theme="memphis"] .acc__plus { background: var(--mm-line); color: var(--mm-yellow); border-radius: 8px; }
:root[data-theme="memphis"] .acc__item.is-open .acc__plus { background: var(--rose); color: #fff; }
:root[data-theme="memphis"] .acc__idx { color: var(--mm-teal); opacity: 1; }

:root[data-theme="memphis"] .about { background: var(--paper); }
:root[data-theme="memphis"] .services { background: #fff0dc; }
:root[data-theme="memphis"] .skills { background: #fef7ea; }
:root[data-theme="memphis"] .facts > div { border-top: 2px dashed rgba(18, 17, 18, .28); }
:root[data-theme="memphis"] .facts dt { color: var(--mm-teal); }

:root[data-theme="memphis"] .ticker__run i { color: #fff8e6; opacity: .9; }
:root[data-theme="memphis"] .flow__list::before { background: rgba(255, 244, 228, .45); }
:root[data-theme="memphis"] .flow__no { color: #fff8e6; }
:root[data-theme="memphis"] .flow__step p { color: rgba(255, 244, 228, .92); }
:root[data-theme="memphis"] .flow__list li::before { background: var(--mm-yellow); }

:root[data-theme="memphis"] .contact { background: var(--mm-teal); }
:root[data-theme="memphis"] .contact::after {
  content: "☆";
  font-size: clamp(7rem, 18vw, 16rem);
  color: var(--mm-yellow);
  opacity: 1;
  -webkit-text-stroke: 2px var(--mm-line);
  transform: rotate(-8deg);
}
:root[data-theme="memphis"] .mail { color: var(--paper); background-image: linear-gradient(var(--mm-yellow), var(--mm-yellow)); }
:root[data-theme="memphis"] .mail:hover { color: var(--mm-yellow); }
:root[data-theme="memphis"] .copybtn { background: var(--mm-yellow); color: var(--mm-line); border: 2px solid var(--mm-line); }
:root[data-theme="memphis"] .copybtn:hover { background: var(--paper); }
:root[data-theme="memphis"] .tel { color: var(--paper); border-color: rgba(255, 244, 228, .55); }
:root[data-theme="memphis"] .note--light { color: rgba(255, 244, 228, .78); }
:root[data-theme="memphis"] .ruler i { background: var(--rose); }
:root[data-theme="memphis"] .curtain { background: var(--paper); }
:root[data-theme="memphis"] .curtain__star { color: var(--rose); }
:root[data-theme="memphis"] .curtain__sky { background: var(--mm-teal); }
:root[data-theme="memphis"] .curtain__title span { color: var(--rose); -webkit-text-stroke: 1.5px var(--mm-line); text-shadow: 4px 4px 0 var(--mm-line); }
:root[data-theme="memphis"] .cursor span { background: var(--rose); color: #fff; border: 2px solid var(--mm-line); }

/* --- 字体 --- */
:root[data-theme="memphis"] {
  --display: "Fredoka", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", sans-serif;
}
