/* Copied from the original KOMA src/index.css: comments and social profile. */
:root{--color-line:var(--line);--color-line-strong:var(--line);--color-surface-1:var(--surface-1);--color-surface-2:var(--surface-2);--color-surface-3:var(--surface-3);--color-text-primary:var(--text);--color-text-secondary:var(--muted);--color-text-tertiary:var(--muted);--color-accent:var(--accent);--color-accent-on-color:#101925;--radius-lg:20px;--radius-md:14px}

/* Comment Author Layout */
.comment-author {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.comment-author__avatar {
  flex: 0 0 36px;
}

.comment-author__identity {
  flex: 1 1 auto;
  min-width: 0;
}

.comment-author__primary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  min-width: 0;
}

.comment-author__name {
  min-width: 0;
  overflow-wrap: anywhere;
}

.comment-author__role {
  flex: 0 0 auto;
}

.comment-author__secondary {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: var(--color-text-tertiary);
}

.comment-author__username {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 359px) {
  .comment-author__secondary {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }
}

/* Comment Footer Layout */
.comment-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.comment-footer__reactions {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.comment-footer__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

@media (max-width: 767px) {
  .comment-footer {
    display: grid;
    gap: 8px;
  }

  .comment-footer__reactions {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }

  .comment-footer__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
  }

  .comment-footer__actions button {
    min-width: 0;
    min-height: 40px;
    white-space: nowrap;
  }
}

.comment-reaction-picker {
  position: fixed !important;
  z-index: 1000;
  max-width: calc(100vw - 32px);
}

.site-header-inner { position:relative; }
.notification-menu { position:relative; flex:none; }
.notification-toggle {
  position:relative;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--surface-1);
  color:var(--muted);
  cursor:pointer;
}
.notification-toggle:hover,.notification-toggle[aria-expanded="true"] { color:var(--text); background:var(--surface-2); }
.notification-toggle svg { width:19px; height:19px; }
.notification-badge,.nav-notification-badge {
  position:absolute;
  top:-4px;
  right:-5px;
  display:grid;
  min-width:18px;
  height:18px;
  place-items:center;
  padding:0 4px;
  border:2px solid var(--surface-1);
  border-radius:999px;
  background:#e55d6a;
  color:#fff;
  font-size:9px;
  font-weight:700;
  line-height:1;
}
.notification-popover {
  position:absolute;
  z-index:50;
  top:calc(100% + 12px);
  right:-55px;
  width:min(360px,calc(100vw - 24px));
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:15px;
  background:var(--surface-1);
  box-shadow:0 18px 44px #0007;
  animation:page-appear 160ms ease-out;
}
.notification-popover-head { display:flex; justify-content:space-between; align-items:center; padding:14px 16px; border-bottom:1px solid var(--line); font-size:13px; }
.notification-popover-head span { color:var(--accent); font-size:11px; }
.notification-popover>a:last-child { display:block; padding:12px; color:var(--accent); text-align:center; text-decoration:none; font-size:12px; font-weight:650; }
.notification-popover>a:last-child:hover { background:var(--surface-2); }
.notification-popover-empty { padding:24px 14px; color:var(--muted); text-align:center; font-size:12px; }
.notification-list { max-height:420px; overflow-y:auto; }
.notification-item { display:flex; align-items:center; gap:11px; min-width:0; padding:12px 15px; border-bottom:1px solid var(--line); color:var(--text); text-decoration:none; transition:background-color 140ms ease; }
.notification-item:hover { background:var(--surface-2); }
.notification-item.is-new { background:color-mix(in srgb,var(--accent) 5%,transparent); }
.notification-item.is-compact { padding:11px 14px; }
.notification-item-icon { display:grid; flex:none; width:34px; height:34px; place-items:center; border-radius:10px; background:var(--surface-2); color:var(--accent); }
.notification-item-icon.is-like { color:#ff7184; }
.notification-item-icon.is-release { color:#78b6ff; }
.notification-item-icon svg { width:17px; height:17px; }
.notification-item-copy { display:grid; flex:1; min-width:0; gap:4px; }
.notification-item-copy strong { overflow-wrap:anywhere; font-size:12px; font-weight:550; line-height:1.4; }
.notification-item-copy small { color:var(--muted); font-size:10px; }
.notification-item-dot { width:7px; height:7px; flex:none; border-radius:50%; background:var(--accent); }
.nav-notification-icon { position:relative; display:grid; }
.nav-notification-badge { top:-5px; right:-8px; min-width:16px; height:16px; }
.notifications-panel { max-width:760px; margin:auto; overflow:hidden; border:1px solid var(--line); border-radius:16px; background:var(--surface-1); }
.notifications-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; border-bottom:1px solid var(--line); }
.notifications-filters { display:flex; gap:5px; }
.notifications-filters button { min-height:34px; padding:7px 10px; border:1px solid transparent; border-radius:8px; background:transparent; color:var(--muted); font:inherit; font-size:11px; cursor:pointer; }
.notifications-filters button.is-active { border-color:var(--line); background:var(--surface-2); color:var(--text); }
.notifications-filters button span { margin-left:4px; color:var(--accent); }
.notifications-toolbar>.text-button { border:0; background:none; color:var(--accent); font:inherit; font-size:11px; cursor:pointer; }
.notifications-empty { display:grid; justify-items:center; gap:8px; padding:44px 20px; color:var(--muted); text-align:center; }
.notifications-empty>svg { width:26px; height:26px; color:var(--accent); }
.notifications-empty h2 { margin:0; color:var(--text); font-size:16px; }
.notifications-empty p { max-width:400px; margin:0; font-size:12px; line-height:1.5; }
@media(max-width:767px) {
  .notification-popover { position:fixed; top:calc(12px + var(--safe-top)); right:12px; }
  .notifications-toolbar { align-items:flex-start; flex-direction:column; }
  .notifications-toolbar>.text-button { align-self:flex-end; }
  .notification-item { padding:11px 12px; }
}
@media(prefers-reduced-motion:reduce) {
  .notification-popover { animation:none; }
  .notification-item { transition:none; }
}

.koma-profile-sidebar>button {
  appearance:none;
  border:0;
  outline:0;
  box-shadow:none;
  background:transparent;
  font:inherit;
  cursor:pointer;
}
.koma-profile-sidebar>button:focus-visible,
.comment-more__toggle:focus-visible,
.comment-more__menu button:focus-visible,
.discussion-tools button:focus-visible {
  outline:2px solid var(--color-accent);
  outline-offset:2px;
}
.koma-profile-title,
.koma-profile-title:visited,
.koma-profile-title:hover,
.koma-profile-title:active,
.koma-profile-panel .profile-recent,
.koma-profile-panel .profile-recent:visited {
  color:var(--color-text-primary);
  text-decoration:none;
}
.koma-profile-title-main strong { color:var(--color-text-primary); }
.profile-achievement {
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  grid-template-rows:auto auto auto;
  gap:8px;
  min-height:130px;
  padding:16px;
  align-items:start;
}
.koma-profile-achievement__emblem { grid-column:1; grid-row:1 / span 3; }
.profile-achievement>span:nth-child(2) { min-width:0; grid-column:2; grid-row:1 / span 2; }
.profile-achievement em { grid-column:2; grid-row:3; justify-self:start; margin:0; }
.comment-author__verified { display:inline-flex; align-items:center; gap:5px; min-width:0; }
.comment-author__primary { align-items:center; flex-wrap:wrap; gap:5px 7px; }
.comment-author__name { line-height:1.3; }
.verified-badge { display:block; flex:none; filter:none; }
.discussion-tools { flex-wrap:wrap; }
.discussion-tools .comment-format-tool {
  display:inline-grid;
  flex:none;
  place-items:center;
  width:32px;
  height:32px;
  padding:0;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:var(--color-text-secondary);
  cursor:pointer;
  transition:background-color 140ms ease,color 140ms ease;
}
.discussion-tools .comment-format-tool:hover { background:var(--color-surface-2); color:var(--color-text-primary); }
.comment-more { position:relative; }
.comment-more__toggle {
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:8px;
  color:var(--color-text-tertiary);
  cursor:pointer;
  list-style:none;
}
.comment-more__toggle::-webkit-details-marker { display:none; }
.comment-more__toggle:hover,.comment-more[open] .comment-more__toggle { background:var(--color-surface-2); color:var(--color-text-primary); }
.comment-more__menu {
  position:absolute;
  z-index:5;
  top:calc(100% + 5px);
  right:0;
  display:grid;
  min-width:150px;
  padding:5px;
  border:1px solid var(--color-line);
  border-radius:10px;
  background:var(--color-surface-1);
  box-shadow:0 10px 28px #0006;
}
.comment-more__menu button {
  min-height:36px;
  padding:7px 10px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--color-text-primary);
  font:inherit;
  font-size:12px;
  text-align:left;
  cursor:pointer;
}
.comment-more__menu button:hover { background:var(--color-surface-2); }
.comment-more__menu button.is-danger { color:#ff8585; }
.comment-inline-edit { display:grid; justify-items:start; gap:8px; margin:10px 0; }
.comment-inline-edit textarea {
  width:100%;
  min-height:82px;
  padding:10px;
  resize:vertical;
  border:1px solid var(--color-line);
  border-radius:9px;
  background:var(--color-surface-2);
  color:var(--color-text-primary);
  font:inherit;
  font-size:14px;
  line-height:1.5;
}
.comment-inline-edit>button { min-height:34px; margin-right:5px; padding:7px 11px; border-radius:8px; font:inherit; font-size:12px; }
.comment-inline-edit>.primary-button { border:0; background:var(--color-accent); color:#101925; }
.comment-inline-edit>.secondary-button { border:1px solid var(--color-line); background:var(--color-surface-2); color:var(--color-text-primary); }
.comment-skeleton { display:flex; gap:10px; padding:16px 2px; border-bottom:1px solid var(--color-line); }
.comment-skeleton__avatar,.comment-skeleton__content i,.catalog-skeleton i,.chapter-skeleton i,.reader-loading-skeleton i {
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:7px;
  background:var(--color-surface-2);
}
.comment-skeleton__avatar { width:36px; height:36px; flex:none; border-radius:50%; }
.comment-skeleton__content { display:grid; flex:1; gap:8px; padding-top:4px; }
.comment-skeleton__content i { width:42%; height:10px; }
.comment-skeleton__content i:nth-child(2) { width:92%; height:12px; }
.comment-skeleton__content i:nth-child(3) { width:68%; height:12px; }
.comment-skeleton__avatar::after,.comment-skeleton__content i::after,.catalog-skeleton i::after,.chapter-skeleton i::after,.reader-loading-skeleton i::after {
  position:absolute;
  inset:0;
  content:"";
  background:linear-gradient(100deg,transparent 25%,#ffffff0c 50%,transparent 75%);
  transform:translateX(-100%);
  animation:skeleton-shimmer 1.6s ease-in-out infinite;
}
.catalog-skeleton { display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:14px; }
.catalog-skeleton i { aspect-ratio:2/3; }
.catalog-skeleton--featured { grid-template-columns:1fr; }
.catalog-skeleton--featured i { aspect-ratio:2.45; }
.chapter-skeleton { display:grid; gap:10px; }
.chapter-skeleton i { height:58px; }
.title-skeleton { display:grid; grid-template-columns:minmax(150px,240px) minmax(0,1fr); gap:16px 28px; }
.title-skeleton__cover { grid-row:span 2; }
.title-skeleton__cover i { aspect-ratio:2/3; }
.title-skeleton__content { display:grid; align-content:start; gap:12px; padding:12px 0; }
.title-skeleton__content i { height:16px; }
.title-skeleton__content i:first-child { width:72%; height:30px; }
.title-skeleton__content i:nth-child(2) { width:48%; }
.title-skeleton__content i:nth-child(3) { width:92%; height:50px; }
.title-skeleton__content i:nth-child(4) { width:64%; }
.title-skeleton>.chapter-skeleton { grid-column:2; }
.profile-skeleton { display:grid; gap:12px; padding:20px; border:1px solid var(--color-line); border-radius:14px; background:var(--color-surface-1); }
.profile-skeleton i { display:block; height:16px; border-radius:7px; background:var(--color-surface-2); }
.profile-skeleton i:first-child { width:38%; height:30px; }
.profile-skeleton i:nth-child(2) { width:60%; }
.profile-skeleton i:nth-child(n+3) { width:100%; height:54px; }
.reader-loading-skeleton { display:grid; gap:12px; width:min(100%,720px); margin:16px auto; }
.reader-loading-skeleton i { width:100%; aspect-ratio:0.72; }
.reader-loading-skeleton i:nth-child(n+2) { display:none; }
@keyframes skeleton-shimmer { to { transform:translateX(100%); } }
.home-screen,.catalog-screen,.title-screen,.library-screen,.profile-screen,.notifications-screen,.admin-screen { animation:page-appear 320ms cubic-bezier(.2,.8,.28,1.16) both; }
.comment-more__menu,.comment-inline-edit { animation:page-appear 140ms ease-out both; }
.comment-notification-target { animation:comment-target-pulse 2.4s ease-out; }
@keyframes comment-target-pulse {
  0%,100% { background:transparent; }
  18%,55% { background:color-mix(in srgb,var(--color-accent) 16%,transparent); }
}
@media(max-width:767px) {
  .profile-achievement { min-height:120px; padding:12px; }
  .comment-footer__actions { flex-wrap:wrap; }
  .discussion-tools .comment-format-tool { width:34px; height:34px; }
  .comment-replies .comment-skeleton { padding-block:12px; }
  .title-skeleton { grid-template-columns:104px minmax(0,1fr); gap:12px; }
  .title-skeleton__content { gap:9px; }
  .title-skeleton__content i:first-child { height:24px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-screen,.catalog-screen,.title-screen,.library-screen,.profile-screen,.notifications-screen,.admin-screen,
  .comment-more__menu,.comment-inline-edit { animation:none!important; }
  .comment-notification-target { animation:none; outline:2px solid var(--color-accent); outline-offset:3px; border-radius:8px; }
  .comment-skeleton__avatar::after,.comment-skeleton__content i::after,.catalog-skeleton i::after,
  .chapter-skeleton i::after,.reader-loading-skeleton i::after { animation:none!important; }
  .discussion-tools .comment-format-tool { transition:none; }
}
@keyframes page-appear { from {opacity:0;transform:translateY(8px) scale(.992)} to {opacity:1;transform:translateY(0) scale(1)} }
@keyframes overlay-appear { from {opacity:0} to {opacity:1} }

/* Profile: quiet social layout, using the same site surfaces and type scale. */
.koma-profile { --profile-border:var(--color-line); width:min(100%,940px); margin:auto; min-width:0; }
.koma-profile-hero { background:var(--color-surface-1); border:1px solid var(--profile-border); border-radius:var(--radius-lg); overflow:hidden; }
.koma-profile-banner { height:clamp(120px,17vw,178px); position:relative; overflow:hidden; background:var(--color-surface-2); transition:height 200ms ease; }
.koma-profile-banner-image { width:100%; height:100%; object-fit:cover; }
.koma-profile-banner-glow { display:none; }
.koma-profile-cover-toggle { position:absolute; top:12px; right:12px; background:var(--color-surface-1); color:var(--color-text-secondary); border:1px solid var(--profile-border); border-radius:8px; padding:6px 10px; font-size:11px; }
.koma-profile-hero--collapsed .koma-profile-banner { height:42px; }
.koma-profile-identity { display:flex; align-items:flex-start; gap:18px; position:relative; padding:0 24px 22px; }
.koma-profile-avatar { width:82px; height:82px; flex:0 0 82px; margin-top:-32px; display:grid; place-items:center; overflow:hidden; border:3px solid var(--color-surface-1); border-radius:50%; background:var(--color-surface-3); color:var(--color-text-primary); font-size:28px; font-weight:700; }
.koma-profile-avatar img { width:100%; height:100%; object-fit:cover; }
.koma-profile-main { min-width:0; flex:1; padding-top:15px; }
.koma-profile-main h1 { font-size:clamp(20px,2.2vw,26px); font-weight:700; line-height:1.2; letter-spacing:-.02em; }
.koma-profile-handle { margin-top:4px; color:var(--color-text-tertiary); font-size:13px; }
.koma-profile-role,.koma-profile-custom-title { border:1px solid var(--profile-border); border-radius:999px; color:var(--color-text-secondary); font-size:10px; font-weight:600; padding:3px 8px; }
.koma-profile-bio { max-width:66ch; white-space:pre-wrap; font-size:13px; line-height:1.6; color:var(--color-text-secondary); margin-top:10px; }
.koma-profile-social { display:flex; flex-wrap:wrap; gap:10px 15px; margin-top:12px; color:var(--color-text-tertiary); font-size:11px; }
.koma-profile-social span,.koma-profile-social a { display:inline-flex; align-items:center; gap:4px; }
.koma-profile-social a { color:var(--color-text-secondary); text-transform:capitalize; }
.koma-profile-social a:hover { color:var(--color-accent); }
.koma-profile-edit { display:inline-flex; align-items:center; gap:7px; margin-top:14px; flex:0 0 auto; }
.koma-profile-stats { display:flex; gap:20px; flex-wrap:wrap; border-top:1px solid var(--profile-border); padding:14px 24px; }
.koma-profile-stats>div { display:inline-flex; gap:5px; align-items:baseline; }
.koma-profile-stats strong { font-size:13px; font-weight:700; }
.koma-profile-stats span { font-size:12px; color:var(--color-text-tertiary); }
.koma-profile-tabs { display:flex; margin:12px 0 18px; overflow-x:auto; border-bottom:1px solid var(--profile-border); scrollbar-width:thin; }
.koma-profile-tabs button { display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; padding:13px 17px; border-bottom:2px solid transparent; color:var(--color-text-tertiary); font-size:12px; font-weight:600; }
.koma-profile-tabs button:hover { color:var(--color-text-primary); }
.koma-profile-tabs button[aria-current="page"] { color:var(--color-text-primary); border-bottom-color:var(--color-text-primary); }
.koma-profile-tabs svg { width:15px; height:15px; }
.koma-profile-content { display:grid; grid-template-columns:180px minmax(0,1fr); gap:18px; align-items:start; animation:page-appear 180ms ease-out; }
.koma-profile-sidebar { padding:0 8px 8px; border-right:1px solid var(--profile-border); }
.koma-profile-sidebar-heading { display:flex; justify-content:space-between; padding:12px 8px; font-size:12px; font-weight:650; }
.koma-profile-sidebar>button,.koma-profile-sidebar>a { display:flex; align-items:center; justify-content:space-between; width:100%; gap:8px; padding:10px 9px; border-radius:8px; text-align:left; font-size:12px; color:var(--color-text-secondary); }
.koma-profile-sidebar>button:hover,.koma-profile-sidebar>a:hover { background:var(--color-surface-2); }
.koma-profile-sidebar>button.active { color:var(--color-text-primary); font-weight:650; background:var(--color-surface-2); }
.koma-profile-sidebar small { color:var(--color-text-tertiary); font-size:10px; }
.koma-profile-sidebar-divider { border-top:1px solid var(--profile-border); margin:12px 8px; }
.koma-profile-sidebar h3 { padding:7px 9px; color:var(--color-text-tertiary); font-size:10px; font-weight:650; text-transform:uppercase; letter-spacing:.08em; }
.koma-profile-sidebar .koma-profile-add-list { color:var(--color-accent); }
.koma-profile-toolbar { display:flex; flex-wrap:wrap; gap:8px; }
.koma-profile-toolbar label { display:flex; align-items:center; gap:9px; flex:1; min-width:210px; height:41px; padding:0 12px; border:1px solid var(--profile-border); border-radius:8px; color:var(--color-text-tertiary); background:var(--color-surface-1); }
.koma-profile-toolbar input { width:100%; border:0; background:transparent; font-size:12px; color:var(--color-text-primary); }
.koma-profile-sort { min-width:150px; padding:0 10px; border:1px solid var(--profile-border); border-radius:8px; background:var(--color-surface-1); font-size:12px; }
.koma-profile-result-count { margin:15px 0 7px; color:var(--color-text-tertiary); font-size:11px; }
.koma-profile-title-list { border-top:1px solid var(--profile-border); }
.koma-profile-title { display:flex; align-items:center; gap:13px; min-height:94px; padding:10px 8px; border-bottom:1px solid var(--profile-border); transition:background-color 150ms ease; }
.koma-profile-title:hover { background:var(--color-surface-1); }
.koma-profile-title>img { width:50px; height:68px; flex:0 0 50px; border-radius:5px; object-fit:cover; background:var(--color-surface-3); }
.koma-profile-title-main { min-width:0; flex:1; }
.koma-profile-title-main strong { font-size:12px; line-height:1.4; }
.koma-profile-title-main p { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin:3px 0 5px; color:var(--color-text-tertiary); font-size:11px; }
.koma-profile-title-main>span { color:var(--color-text-secondary); font-size:11px; }
.koma-profile-title-status { color:var(--color-text-tertiary); font-size:10px; }
.koma-profile-progress { width:min(220px,100%); height:3px; margin-top:7px; border-radius:99px; overflow:hidden; background:var(--color-surface-3); }
.koma-profile-progress span { display:block; height:100%; background:var(--color-accent); }
.koma-profile-title time { flex:0 0 74px; color:var(--color-text-tertiary); font-size:10px; text-align:right; }
.koma-profile-title-chevron { color:var(--color-text-tertiary); }
.koma-profile-empty { display:grid; justify-items:center; gap:8px; padding:50px 20px; color:var(--color-text-tertiary); text-align:center; font-size:12px; }
.koma-profile-empty h3 { color:var(--color-text-primary); font-size:16px; font-weight:650; }
.koma-profile-empty a { display:inline-flex; align-items:center; color:var(--color-accent); margin-top:8px; }
.koma-profile-panel { padding:22px; border:1px solid var(--profile-border); border-radius:var(--radius-md); background:var(--color-surface-1); animation:page-appear 180ms ease-out; }
.koma-profile-panel h2 { font-size:17px; font-weight:650; margin-bottom:8px; }
.koma-profile-panel p { color:var(--color-text-secondary); font-size:12px; }
.koma-profile-heatmap { display:grid; grid-template-rows:repeat(7,11px); grid-auto-flow:column; grid-auto-columns:11px; gap:3px; width:max-content; }
.koma-profile-heatmap span { border-radius:2px; background:var(--color-surface-3); }
.koma-profile-heatmap span.level-1 { background:#315a83; }.koma-profile-heatmap span.level-2 { background:#4078b4; }.koma-profile-heatmap span.level-3 { background:#5693d4; }.koma-profile-heatmap span.level-4 { background:var(--color-accent); }
.koma-profile-history,.koma-profile-comment { display:flex; align-items:flex-start; gap:12px; padding:12px 0; border-top:1px solid var(--profile-border); font-size:12px; }
.koma-profile-history span,.koma-profile-comment span { flex:1; min-width:0; }.koma-profile-history small,.koma-profile-comment time { color:var(--color-text-tertiary); }
.koma-profile-comment p { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin-top:5px; }
.koma-profile-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; animation:page-appear 180ms ease-out; }
.koma-profile-grid .koma-profile-panel { min-height:130px; }.koma-profile-grid .koma-profile-panel:hover { background:var(--color-surface-2); }
.koma-profile-grid .koma-profile-new { color:var(--color-accent); display:grid; place-items:center; font-weight:650; }
.koma-profile-panel dl { display:grid; grid-template-columns:120px 1fr; gap:10px; margin-top:16px; font-size:12px; }.koma-profile-panel dt { color:var(--color-text-tertiary); }
.koma-profile-genre { padding:7px 10px; border:1px solid var(--profile-border); border-radius:8px; color:var(--color-text-secondary); background:var(--color-surface-2); font-size:11px; }
.title-tags-toggle { padding:5px 8px; border:1px solid var(--color-line); border-radius:8px; background:var(--color-surface-2); color:var(--color-accent); font:inherit; font-size:12px; cursor:pointer; }
@media(max-width:700px){.koma-profile-content{grid-template-columns:1fr}.koma-profile-sidebar{display:flex;gap:3px;align-items:center;overflow-x:auto;white-space:nowrap;border-right:0;border-bottom:1px solid var(--profile-border);padding:0 0 7px}.koma-profile-sidebar-heading,.koma-profile-sidebar-divider,.koma-profile-sidebar h3,.koma-profile-sidebar>a{display:none!important}.koma-profile-sidebar>button{width:auto;flex:0 0 auto;gap:6px}.koma-profile-identity{padding:0 16px 18px;gap:12px}.koma-profile-stats{padding:13px 16px}.koma-profile-tabs button{padding-inline:12px}}
@media(max-width:480px){.koma-profile-identity{flex-wrap:wrap}.koma-profile-main{flex:1 1 calc(100% - 100px)}.koma-profile-edit{margin:0 0 0 auto}.koma-profile-stats{gap:9px 15px}.koma-profile-title time,.koma-profile-title-chevron{display:none}.koma-profile-sort{width:100%}}
@media(prefers-reduced-motion:reduce){.platform-shell-main,.koma-profile-content,.koma-profile-panel,.koma-profile-grid,.koma-overlay{animation:none!important}.koma-profile-banner,.koma-select-chevron{transition:none!important}}
.discussion-feed { width:min(100%,700px); margin-inline:auto; overflow-wrap:anywhere; }
.reader-inline-discussion .discussion-feed { padding-top:10px; }
.discussion-feed > .group { border-bottom:1px solid var(--color-line); }
.discussion-feed .comment-author { min-width:0; }
.discussion-feed .comment-author__identity { min-width:0; }
.discussion-feed .comment-author__name { font-size:13px; }
.discussion-feed .comment-author__secondary { font-size:11px; }
.discussion-feed textarea { min-height:88px; border-radius:12px; background:var(--color-surface-1); border-color:var(--color-line); }
.discussion-feed { color:var(--color-text-primary); }
.discussion-feed > .group { padding:0 2px; animation:thread-arrive 260ms cubic-bezier(.2,.7,.2,1) both; }
.discussion-feed > .group:nth-of-type(2) { animation-delay:35ms; }
.discussion-feed > .group:nth-of-type(3) { animation-delay:70ms; }
.discussion-feed > .group:nth-of-type(4) { animation-delay:105ms; }
.discussion-feed .comment-author__avatar { box-shadow:0 0 0 1px var(--color-line); transition:box-shadow 180ms ease,transform 180ms ease; }
.discussion-feed .comment-author__avatar:hover { box-shadow:0 0 0 2px var(--color-accent); transform:scale(1.04); }
.discussion-feed .comment-author__name { color:var(--color-text-primary); font-weight:680; }
.discussion-feed .comment-author__identity > div:first-child { margin-bottom:7px; }
.discussion-feed .comment-footer { gap:4px 14px; align-items:center; }
.discussion-feed .comment-footer__actions { gap:12px; }
.discussion-feed .comment-footer__actions button { font-size:12px; border-radius:8px; padding-inline:6px!important; }
.discussion-feed .comment-footer__actions button:hover { background:var(--color-surface-2)!important; color:var(--color-text-primary); }
.discussion-composer { padding:0 0 17px; margin-bottom:7px; border-bottom:1px solid var(--color-line); }
.discussion-composer form { margin-bottom:0; }
.discussion-feed textarea { transition:border-color 160ms ease,box-shadow 160ms ease,background-color 160ms ease; }
.discussion-feed textarea:focus { border-color:color-mix(in srgb,var(--color-accent) 45%,var(--color-line)); box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 12%,transparent); }
.comment-inline-reply { margin:0 0 14px 44px; padding:10px 0 1px 15px; border-left:2px solid color-mix(in srgb,var(--color-accent) 55%,var(--color-line)); animation:reply-open 200ms cubic-bezier(.2,.7,.2,1) both; }
.comment-inline-reply form { margin:0; }
.comment-inline-reply textarea { min-height:72px; }
.comment-replies { animation:reply-open 220ms cubic-bezier(.2,.7,.2,1) both; }
.comment-replies > .group { border-top:1px solid var(--color-line); }
.comment-format-tools { display:flex; align-items:center; gap:4px; }
.comment-format-tools button { display:grid; place-items:center; width:31px; height:31px; color:var(--color-text-tertiary); border-radius:8px; }
.comment-format-tools button:hover { color:var(--color-text-primary); background:var(--color-surface-2); transform:translateY(-1px); }
.comment-format-tools > span { width:1px; height:17px; margin:0 4px; background:var(--color-line); }
.comment-reaction-row { display:flex; flex-wrap:wrap; align-items:center; min-height:32px; gap:3px; }
.comment-reaction-heart,.comment-reaction-add { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:32px; padding:5px 8px; color:var(--color-text-tertiary); border-radius:8px; font-size:12px; }
.comment-reaction-heart:hover,.comment-reaction-add:hover { background:var(--color-surface-2); color:var(--color-text-primary); }
.comment-reaction-heart.is-active { color:#e98396; }
.comment-reaction-heart svg,.comment-reaction-pill svg,.comment-reaction-choice svg { transition:transform 170ms cubic-bezier(.2,.8,.2,1); }
.comment-reaction-heart:active svg,.comment-reaction-pill:active svg { transform:scale(.78); }
.comment-reaction-pill { display:inline-flex; align-items:center; gap:5px; min-height:31px; padding:3px 7px; border:1px solid var(--color-line); background:var(--color-surface-1); border-radius:999px; color:var(--color-text-secondary); }
.comment-reaction-pill:hover { background:var(--color-surface-2); border-color:var(--color-line-strong); transform:translateY(-1px); }
.comment-reaction-pill.is-active { background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface-1)); border-color:color-mix(in srgb,var(--color-accent) 35%,var(--color-line)); }
.comment-reaction-pill:hover svg { transform:rotate(-7deg) scale(1.12); }
.comment-reaction-picker { position:relative!important; max-width:calc(100vw - 32px); }
.comment-reaction-picker > div { border-color:var(--color-line)!important; background:var(--color-surface-2)!important; box-shadow:0 12px 36px #0007; }
.comment-reaction-choice { display:grid; place-items:center; width:43px; height:43px; border-radius:10px; cursor:pointer; }
.comment-reaction-choice:hover { background:var(--color-surface-3); transform:translateY(-2px); }
.comment-reaction-choice:hover svg { transform:scale(1.14) rotate(-5deg); }
@keyframes thread-arrive { from { opacity:0; transform:translateY(8px) } to { opacity:1; transform:translateY(0) } }
@keyframes reply-open { from { opacity:0; transform:translateY(-6px) } to { opacity:1; transform:translateY(0) } }
/* Mini App bindings for the original KOMA profile and discussion components. */
.koma-profile-banner{display:flex;align-items:center;justify-content:flex-end;padding:20px;background:radial-gradient(circle at 78% 18%,#234268 0,transparent 46%),linear-gradient(120deg,#19263b,#25232f 65%,#18202c)}
.profile-banner-mark{font-size:clamp(56px,11vw,110px);line-height:1;font-weight:800;letter-spacing:-.08em;color:#ffffff16;user-select:none}
.koma-profile-main>p{margin:4px 0;color:var(--color-text-tertiary);font-size:13px}
.koma-profile-main>small{display:block;margin-top:10px;color:var(--color-text-secondary);font-size:12px}
.koma-profile-panels{min-height:180px}
.koma-profile-panel{max-width:100%}
.koma-profile-panel .catalog-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}
.koma-profile-panel .profile-recent{display:flex;align-items:center;gap:12px;color:var(--color-text-primary);text-decoration:none}
.koma-profile-panel .profile-recent .title-cover{width:56px;height:75px;flex:none}
.koma-profile-achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));gap:11px}
.profile-achievement{align-content:start;border:1px solid var(--color-line);border-radius:11px;background:var(--color-surface-2);color:var(--color-text-tertiary)}
.profile-achievement.is-earned{border-color:color-mix(in srgb,var(--color-accent) 36%,var(--color-line));background:color-mix(in srgb,var(--color-accent) 5%,var(--color-surface-2));color:var(--color-accent)}
.koma-profile-achievement__emblem{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--color-surface-3)}
.profile-achievement strong{font-size:12px;color:var(--color-text-primary)}
.profile-achievement small{font-size:10px;line-height:1.4;color:var(--color-text-tertiary)}
.profile-achievement em{font-size:10px;font-style:normal}
.discussion-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}.discussion-head h2{margin:0;font-size:20px}.discussion-head .koma-select{margin-left:auto}
.discussion-count{color:var(--color-text-tertiary);font-size:13px}.discussion-composer{padding:14px;border:1px solid var(--color-line);border-radius:13px;background:var(--color-surface-1)}
.discussion-form textarea,.comment-inline-reply textarea{display:block;width:100%;min-height:88px;resize:vertical;padding:12px;border:1px solid var(--color-line);border-radius:10px;background:var(--color-surface-2);color:var(--color-text-primary);font:inherit;font-size:16px;line-height:1.5;outline:0}
.discussion-tools,.discussion-submit{display:flex;align-items:center;gap:8px;margin-top:9px}.discussion-tools button{width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--color-text-secondary);font-weight:700}.discussion-tools button:hover{background:var(--color-surface-2)}.discussion-tools-spacer{flex:1}.discussion-spoiler{display:flex;align-items:center;gap:5px;color:var(--color-text-tertiary);font-size:12px}.discussion-submit{justify-content:space-between}.discussion-length{color:var(--color-text-tertiary);font-size:11px}.discussion-submit button{min-height:35px;padding:7px 13px;border:0;border-radius:8px;background:var(--color-accent);color:#101925;font-weight:650}.discussion-submit button:disabled{opacity:.5}
.discussion-list>.group{padding:18px 2px;border-bottom:1px solid var(--color-line)}.discussion-empty{padding:28px 0;color:var(--color-text-tertiary);text-align:center;font-size:13px}
.comment-author__avatar{display:grid;place-items:center;width:36px;height:36px;overflow:hidden;border-radius:50%;background:var(--color-surface-3);color:var(--color-accent);font-weight:700}.comment-author__avatar img{width:100%;height:100%;object-fit:cover}
.comment-author__primary{display:flex;align-items:baseline;gap:6px}.comment-author__secondary{color:var(--color-text-tertiary);font-size:11px}.comment-author__secondary time{margin-left:5px}.comment-author__badge{padding:2px 5px;border-radius:5px;background:#e8b76922;color:#e8b769;font-size:10px}
.comment-body{margin:8px 0 6px;white-space:pre-wrap;color:var(--color-text-primary);font-size:13px;line-height:1.55}.comment-body p{margin:0}.comment-spoiler-reveal{padding:6px 10px;border:1px solid var(--color-line);border-radius:7px;background:var(--color-surface-2);color:var(--color-text-secondary)}
.comment-reaction-heart,.comment-reaction-add,.comment-reaction-pill,.comment-footer__actions button{border:0;background:transparent;cursor:pointer}.comment-reaction-pill{border:1px solid var(--color-line)}.comment-reaction-picker{position:absolute!important;z-index:4;left:0;top:100%;display:flex;flex-wrap:wrap;width:max-content;max-width:min(320px,calc(100vw - 40px));padding:5px;border:1px solid var(--color-line);border-radius:10px;background:var(--color-surface-2);box-shadow:0 12px 36px #0007}.comment-reaction-picker[hidden]{display:none!important}.reaction-picker-wrap{position:relative}.comment-footer__actions button{color:var(--color-text-tertiary)}
.comment-inline-reply textarea{margin:7px 0}.comment-inline-reply>button{margin-right:6px}.comment-inline-reply .primary-button{padding:7px 10px;border:0;border-radius:8px;background:var(--color-accent);color:#101925}.comment-inline-reply .secondary-button{padding:7px 10px;border-radius:8px}
.comment-replies{margin-left:44px;padding-left:14px;border-left:2px solid var(--color-line)}.comment-replies>.group{padding:12px 0}
.reader-inline-discussion{width:min(100% - 28px,700px);margin:30px auto 120px;padding:0;border:0;border-radius:0;background:transparent}
.reader-inline-discussion .discussion-head h2{font-size:19px}
@media(max-width:767px){.koma-profile-tabs{margin:12px 0 18px}.koma-profile-panel{padding:16px}.discussion-head h2{font-size:18px}.comment-author__primary{flex-wrap:wrap}.comment-replies{margin-left:18px}.reader-inline-discussion{margin-bottom:calc(100px + var(--safe-bottom))}}
.koma-profile-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer}.koma-profile-tabs button[aria-current=page]{border-bottom-color:var(--color-text-primary)}
.original-title-hero .title-kicker{display:flex;flex-wrap:wrap;gap:3px 8px;margin:17px 0 0;font-size:13px}.original-title-hero .title-kicker-separator{color:var(--color-text-tertiary)}.original-title-hero .title-facts{margin:8px 0 20px;font-size:12px}.original-title-hero .title-credits{display:flex;flex-wrap:wrap;gap:8px 15px;margin-top:18px;color:var(--color-text-secondary);font-size:13px}
/* Match the original KOMA CommentComposer and ReactionPicker rather than a generic emoji menu. */
.discussion-feed .discussion-composer{padding:0 0 17px;margin-bottom:7px;border:0;border-bottom:1px solid var(--color-line);border-radius:0;background:transparent}
.discussion-feed .discussion-form textarea{background:var(--color-surface-1);border-radius:12px}
.comment-gif-picker-wrap{position:relative}
.comment-gif-button{width:auto!important;min-width:38px;height:30px;padding:0 8px;border:1px solid var(--color-line)!important;border-radius:7px;background:var(--color-surface-2)!important;color:var(--color-text-secondary);font-size:11px;font-weight:750;cursor:pointer}
.comment-gif-button:disabled{opacity:.5;cursor:default}
.comment-gif-selected{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;border:1px solid var(--color-line);border-radius:7px;color:var(--color-text-secondary);font-size:11px}
.comment-gif-selected[hidden]{display:none}
.comment-gif-remove{width:auto!important;height:auto!important;padding:0 3px;color:var(--color-accent)!important;font-size:11px;cursor:pointer}
.comment-gif-picker{position:fixed;z-index:1000;width:min(380px,calc(100vw - 24px));max-height:250px;padding:10px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--color-line);border-radius:12px;background:var(--color-surface-2);box-shadow:0 12px 36px #0008}
.comment-gif-picker[hidden]{display:none!important}
.comment-gif-search{width:100%;height:36px;padding:7px 10px;border:1px solid var(--color-line);border-radius:8px;background:var(--color-surface-1);color:var(--color-text-primary);font:inherit;font-size:13px;outline:0}
.comment-gif-search:focus{border-color:var(--color-accent)}
.comment-gif-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:176px;margin-top:8px;overflow-y:auto;overscroll-behavior:contain}
.comment-gif-result{display:block;min-width:0;height:92px;padding:0;overflow:hidden;border:0;border-radius:8px;background:var(--color-surface-3);cursor:pointer}
.comment-gif-result img{display:block;width:100%;height:100%;object-fit:cover}
.comment-gif-message{grid-column:1/-1;margin:0;padding:22px 8px;color:var(--color-text-tertiary);font-size:12px;text-align:center}
.comment-gif-attribution{display:block;margin-top:7px;color:var(--color-text-tertiary);font-size:10px;text-align:right;text-decoration:none}
.comment-gif-attribution:hover{color:var(--color-text-secondary)}
.comment-body .comment-gif{display:block;width:min(100%,420px);max-height:420px;margin-top:8px;border-radius:10px;object-fit:contain}
.admin-workspace{display:grid;gap:18px;margin-top:24px}
.admin-panel-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--surface-1)}
.admin-panel-tabs button{flex:1;min-height:42px;padding:8px 14px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:650;white-space:nowrap;cursor:pointer}
.admin-panel-tabs button.is-active{background:var(--surface-3);color:var(--text)}
.admin-panel-tabs button:focus-visible,.admin-user-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.admin-panel-content{display:grid;gap:16px;min-width:0}
.admin-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-panel-toolbar h2{margin:0!important;font-size:20px!important}
.admin-panel-toolbar>.secondary-button{min-height:36px}
.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.admin-metric-card,.admin-data-section,.admin-user-card{min-width:0;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-1)}
.admin-metric-card{display:grid;gap:7px}
.admin-metric-card>span{color:var(--muted);font-size:12px}
.admin-metric-card strong{font-size:25px;line-height:1.1}
.admin-metric-card small{color:var(--muted);font-size:11px}
.admin-popularity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-data-section h3{margin:0 0 12px;font-size:14px}
.admin-recent-list,.admin-ranking-list,.admin-user-results{display:grid;gap:8px}
.admin-activity-row{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.5fr) auto;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:12px}
.admin-activity-user{font-weight:650;overflow-wrap:anywhere}
.admin-activity-detail,.admin-activity-row time{color:var(--muted)}
.admin-activity-row time{font-size:11px;white-space:nowrap}
.admin-ranking-row,.admin-history-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:12px}
.admin-panel-empty,.admin-panel-error{margin:0;padding:12px;color:var(--muted);font-size:13px}
.admin-panel-error{color:#ff9292}
.admin-user-search{width:min(100%,420px);min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-1);color:var(--text);font:inherit;font-size:14px}
.admin-user-card{display:grid;gap:10px}
.admin-user-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.admin-user-heading>div{display:grid;gap:4px;min-width:0}
.admin-user-heading strong{overflow-wrap:anywhere}
.admin-user-heading small,.admin-user-meta{color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.admin-user-status{flex:none;padding:4px 8px;border-radius:20px;background:var(--surface-3);font-size:10px}
.admin-user-status.status-banned{color:#ff9292}
.admin-user-status.status-muted_comments{color:#efc06c}
.admin-user-actions{display:flex;flex-wrap:wrap;gap:7px}
.admin-user-actions button{min-height:34px;padding:6px 10px;font-size:11px}
.admin-user-actions .danger-button{border-color:#873d43;color:#ff9292}
.admin-user-history{padding-top:8px;border-top:1px solid var(--line);color:var(--text)}
.admin-user-history summary{color:var(--muted);font-size:12px;cursor:pointer}
.admin-history-row{font-size:11px}
.admin-history-row time{flex:none;color:var(--muted)}
.account-gate{position:fixed;inset:0;z-index:1000;display:grid;align-content:center;justify-items:center;gap:12px;padding:28px;background:var(--bg);color:var(--text);text-align:center}
.account-gate h1{margin:0;font-size:24px}
.account-gate p{max-width:420px;margin:0;color:var(--muted);line-height:1.5}
.account-gate button{margin-top:8px}
.comment-reaction-picker{position:absolute!important;top:auto;bottom:calc(100% + 8px);left:0;z-index:30;display:block;width:max-content;max-width:calc(100vw - 32px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform-origin:bottom left;animation:reaction-picker-in 150ms ease-out both}
.comment-reaction-picker-surface{max-width:calc(100vw - 32px);padding:8px;border:1px solid var(--color-line)!important;border-radius:var(--radius-md);background:var(--color-surface-2)!important;box-shadow:0 12px 36px #0007}
.comment-reaction-picker-choices{display:flex;align-items:center;gap:4px}
.comment-reaction-choice{display:grid;place-items:center;width:43px;height:43px;padding:0;border:0;border-radius:10px;background:transparent;cursor:pointer}
.comment-reaction-choice:hover{background:var(--color-surface-3);transform:translateY(-2px)}
.comment-reaction-pill{background:var(--color-surface-1)}
.comment-reaction-add svg{width:18px;height:18px}
.verified-badge{display:inline-block;flex:none;vertical-align:middle;filter:drop-shadow(0 1px 4px #69a9ff55)}
.profile-verified-name{display:flex;align-items:center;gap:7px}
@keyframes reaction-picker-in{from{opacity:0;transform:translateY(4px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:767px){.comment-reaction-choice{width:38px;height:38px}.comment-reaction-picker-choices{gap:1px}}
@media(prefers-reduced-motion:reduce){.comment-reaction-picker{animation:none}}
/* Original title-page rhythm for the Telegram-sized layout. */
.title-more{position:relative;flex:none}.title-more summary{list-style:none;cursor:pointer}.title-more summary::-webkit-details-marker{display:none}.title-more[open] summary{border-color:var(--color-accent)}
.title-more-menu{position:absolute;z-index:8;top:calc(100% + 8px);right:0;display:grid;gap:2px;min-width:190px;padding:6px;border:1px solid var(--color-line);border-radius:11px;background:var(--color-surface-2);box-shadow:0 12px 36px #0008;animation:reaction-picker-in 150ms ease-out both}
.title-more-menu>a,.title-more-menu>button{display:flex;align-items:center;gap:9px;width:100%;min-height:38px;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:var(--color-text-primary);font-size:13px;text-align:left;text-decoration:none;cursor:pointer}.title-more-menu>a:hover,.title-more-menu>button:hover{background:var(--color-surface-3)}
.chapter-filters{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chapter-filter{min-height:38px;padding:8px 12px;border:0;border-radius:9px;background:var(--color-surface-2);color:var(--color-text-secondary);font-size:13px;cursor:pointer;transition:background .15s,color .15s,transform .15s}.chapter-filter:hover{background:var(--color-surface-3);transform:translateY(-1px)}.chapter-filter[aria-pressed=true]{background:var(--color-accent);color:#101925}.chapter-translation{display:block;width:max-content;max-width:100%;margin:0 0 20px;background:var(--color-surface-2)}
@media(max-width:767px) {
  .admin-panel-toolbar{align-items:stretch;flex-direction:column}
  .admin-panel-toolbar h2{font-size:18px!important}
  .admin-user-search{width:100%}
  .admin-popularity{grid-template-columns:1fr}
  .admin-activity-row{grid-template-columns:minmax(0,1fr) auto}
  .admin-activity-detail{grid-column:1/-1;grid-row:2}
  .admin-activity-row time{grid-column:2;grid-row:1}
  .admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .original-title-hero{display:grid;grid-template-columns:1fr;gap:28px}
 .original-title-hero>.title-cover{width:min(100%,340px)!important;max-width:340px;margin-inline:auto;border-radius:16px}
 .original-title-hero h1{margin:0 0 8px!important;font-size:22px!important;line-height:1.22}
 .original-title-hero .alternative-title{font-size:13px}
 .original-title-hero .title-kicker{margin:18px 0 0;font-size:13px}
 .original-title-hero .title-actions{display:grid;grid-template-columns:max-content 44px;justify-content:start;gap:9px 10px;margin:25px 0 26px}
 .original-title-hero .title-actions>.primary-button{grid-column:1/-1;justify-self:start;min-height:46px;padding:10px 16px;font-size:14px;white-space:nowrap}
 .original-title-hero .title-actions>.secondary-button{min-height:44px;padding:9px 13px;font-size:13px;white-space:nowrap}
 .original-title-hero .title-actions .icon-button{width:44px;height:44px;border:0;border-radius:9px}
 .original-title-hero .title-description{font-size:14px!important;line-height:1.6!important}
 .original-title-hero .title-tags{gap:7px;margin-top:20px}.original-title-hero .title-tag{padding:7px 10px;border:0;border-radius:8px;font-size:12px}
 .original-title-hero .title-credits{margin-top:23px;font-size:13px}
 .title-tabs{margin-top:34px;gap:23px}.title-tab{font-size:13px}
 .title-panels{padding-top:23px}.chapter-filters{margin:16px 0}.chapter-filter{min-height:38px}
}
@media(max-width:390px){.original-title-hero>.title-cover{width:min(100%,307px)!important}}

/* Title actions and profile admin entry share the content column rhythm. */
.original-title-hero .title-actions{margin:15px 0 19px}
.profile-admin-actions{display:flex;align-items:center;padding:0 24px 18px}
.profile-admin-actions .profile-admin-link{margin:0}

/* Discussion composer: broad field, grouped tools, actions, then counter. */
.discussion-feed{min-width:0;max-width:100%}
#title-panel-discussion .discussion-feed{width:min(100%,920px)}
.discussion-head{min-width:0;gap:10px;margin-bottom:18px}
.discussion-head h2{font-size:clamp(20px,2.4vw,25px);letter-spacing:-.025em}
.discussion-count{display:inline-grid;place-items:center;min-width:32px;min-height:30px;padding:4px 10px;border-radius:10px;background:var(--color-surface-2);color:var(--color-text-secondary);font-size:13px;font-variant-numeric:tabular-nums}
.discussion-feed .discussion-composer{min-width:0;padding:0 0 22px;margin:0 0 4px;border:0;border-bottom:1px solid var(--color-line);background:transparent}
.discussion-feed .discussion-form{min-width:0}
.discussion-feed .discussion-form textarea{
  box-sizing:border-box;width:100%;max-width:100%;min-height:132px;
  padding:17px 18px;border:1px solid var(--color-line-strong,var(--color-line));
  border-radius:16px;background:var(--color-surface-1);
  color:var(--color-text-primary);font-size:16px;line-height:1.5;
}
.discussion-feed .discussion-form textarea::placeholder{color:var(--color-text-tertiary)}
.discussion-feed .discussion-form textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}
.discussion-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;min-width:0;margin-top:13px}
.discussion-format-group{display:flex;align-items:center;gap:3px;max-width:100%;padding:5px;border:1px solid var(--color-line);border-radius:13px;background:var(--color-surface-1)}
.discussion-tools .discussion-format-group .comment-format-tool{width:35px;height:35px;border-radius:8px;color:var(--color-text-secondary)}
.discussion-tools .discussion-format-group .comment-format-tool:hover{background:var(--color-surface-2);color:var(--color-text-primary)}
.discussion-format-group .comment-format-tool:focus-visible,.discussion-action-group button:focus-visible,.discussion-spoiler:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}
.discussion-format-divider{display:block;flex:none;width:1px;height:21px;margin:0 4px;background:var(--color-line)}
.discussion-action-group{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;min-width:0;margin-left:auto}
.discussion-spoiler{display:inline-flex;align-items:center;gap:7px;min-height:40px;white-space:nowrap;color:var(--color-text-secondary);font-size:13px;cursor:pointer}
.discussion-spoiler input{width:18px;height:18px;margin:0;accent-color:var(--color-accent)}
.discussion-tools .discussion-action-group .comment-gif-button{width:auto!important;min-width:44px;height:40px;padding:0 10px;border:1px solid var(--color-line)!important;border-radius:10px;background:var(--color-surface-2)!important;font-size:12px}
.discussion-tools .discussion-action-group .comment-gif-button:hover{border-color:var(--color-line-strong,var(--color-accent))!important;color:var(--color-text-primary)}
.discussion-tools .discussion-action-group>.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:auto;height:auto;min-height:40px;padding:9px 15px;border:0;border-radius:10px;background:var(--color-accent);color:#101925;font-size:13px;font-weight:700;white-space:nowrap}
.discussion-tools .discussion-action-group>.primary-button:hover{background:var(--color-accent)}
.discussion-tools .discussion-action-group>.primary-button:disabled{opacity:.5;cursor:not-allowed}
.discussion-action-group>.primary-button svg{flex:none}
.discussion-submit{display:flex;justify-content:flex-start;margin-top:11px}
.discussion-length{color:var(--color-text-tertiary);font-size:12px;font-variant-numeric:tabular-nums}
@media(max-width:767px){
  .profile-admin-actions{padding:0 16px 16px}
  .original-title-hero .title-kicker{margin-top:14px}
  .original-title-hero .title-actions{width:min(100%,320px);grid-template-columns:minmax(0,1fr) 44px;justify-content:center;margin:17px auto 23px;gap:9px}
  .original-title-hero .title-actions>.primary-button{grid-column:1/-1;justify-self:stretch;width:100%;white-space:normal;text-align:center}
  .original-title-hero .title-actions>.secondary-button{width:100%;min-width:0;white-space:normal}
  .discussion-head{flex-wrap:wrap}
  .discussion-tools{align-items:flex-start;gap:10px}
  .discussion-action-group{width:100%;justify-content:flex-start;margin-left:0}
  .discussion-feed .discussion-form textarea{min-height:124px;padding:14px}
}
@media(max-width:440px){
  .discussion-tools .discussion-action-group>.primary-button{width:100%;min-height:44px}
  .discussion-head .app-select{min-width:124px}
  .discussion-head .app-select-trigger{min-width:124px}
}
@media(max-width:340px){
  .discussion-head .app-select{flex:1 1 100%;margin-left:0}
  .discussion-action-group{gap:8px}
}
