.is-app {
  background: #fff;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  touch-action: manipulation;
}
.is-app .wrap { width: min(680px, calc(100% - 28px)); }
.is-app .top { padding: 12px 0; }
.is-app .logo { font-size: 16px; }
.app { display: grid; gap: 0; padding-bottom: 36px; }
.app input, .app textarea, .app select {
  width: 100%;
  border: 0;
  border-radius: 0;
  background: transparent;
  min-height: 0;
  padding: 0;
  font-size: 16px;
  box-shadow: none;
}
.app label { margin: 0; color: #8a8f98; font-size: 13px; }
.ed-top, .ed-sub {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.ed-top { padding: 4px 0 8px; }
.ed-linkish, .ed-sub button, .ed-tools button {
  border: 0;
  background: transparent;
  color: #1a1d27;
  font: inherit;
  font-size: 15px;
  min-height: 36px;
  padding: 0 8px;
  cursor: pointer;
}
.ed-save { color: #8a8f98; font-size: 14px; }
.ed-title, .app h1.ed-title {
  width: 100%;
  margin: 8px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.15;
  min-height: 0;
}
.ed-lead {
  margin-top: 10px;
  color: #3c4250;
  font-size: 18px;
  line-height: 1.4;
  resize: none;
  min-height: 0;
}
.ed-cover {
  display: block;
  width: 100%;
  margin: 14px 0;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  color: #8a8f98;
  font: inherit;
  font-size: 15px;
  cursor: pointer;
}
.ed-cover img, .app .ed-cover img {
  display: block;
  width: 100%;
  max-height: 280px;
  object-fit: cover;
  border-radius: 8px;
  aspect-ratio: auto;
}
.ed-tools {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  gap: 2px;
  margin: 0 -14px;
  padding: 6px 8px;
  overflow-x: auto;
  background: #fff;
  border-bottom: 1px solid #eee;
}
.ed-tools button { flex: 0 0 auto; color: #3c4250; border-radius: 8px; }
.ed-tools button[data-md="bold"] { font-weight: 700; }
.ed-tools button[data-md="italic"] { font-style: italic; }
.ed-tools button[data-md="underline"] { text-decoration: underline; text-underline-offset: 3px; }
.ed-tools button[data-md="strike"] { text-decoration: line-through; }
.ed-body {
  min-height: 46vh;
  margin-top: 12px;
  font-size: 18px;
  line-height: 1.55;
  resize: none;
}
.ed-linkbox {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid #eee;
}
.ed-linkbox[hidden] { display: none; }
.ed-linkbox input { flex: 1; min-height: 36px; font-size: 16px; }
.ed-pub { display: grid; gap: 12px; margin-top: 28px; padding-top: 16px; border-top: 1px solid #eee; }
.ed-pub select, .ed-pub input { min-height: 44px; border-bottom: 1px solid #e6e6e6; }
.ed-actions { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.ed-actions button { border: 0; background: transparent; padding: 8px 0; font: inherit; font-size: 15px; color: #3c4250; cursor: pointer; }
.ed-actions .danger { color: #c2410c; }
.ed-list { display: grid; }
.ed-row {
  display: flex;
  gap: 12px;
  align-items: center;
  width: 100%;
  padding: 14px 0;
  border: 0;
  border-bottom: 1px solid #eee;
  background: transparent;
  text-align: left;
  font: inherit;
  color: inherit;
  cursor: pointer;
}
.ed-row strong { display: block; font-size: 18px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.3; }
.ed-row .meta { display: block; margin-top: 3px; }
.ed-row img { width: 56px; height: 56px; object-fit: cover; border-radius: 6px; flex: 0 0 auto; }
.ed-stats { display: flex; gap: 18px; margin: 12px 0 18px; }
.ed-stats b { display: block; font-size: 28px; letter-spacing: -0.03em; }
.ed-stats span { color: #8a8f98; font-size: 14px; }
.app .sheet { border: 0; border-radius: 0; padding: 0; background: transparent; }
.app .prose { font-size: 18px; }
.app .btn { width: 100%; margin-top: 8px; }
.app .empty { background: transparent; padding: 8px 0; }
