/* Painted railway: the profile and the owner's notebook. */
.profile-page .profile-intro h1,
.profile-page .profile-section h2,
.profile-page .profile-section h3,
.profile-page .profile-contact h2,
.profile-page .award-dialog h2,
.blog-page .blog-intro h1,
.blog-page .post-copy h2,
.blog-page .blog-empty h2,
.blog-page .article-header h1,
.blog-page .article-prose > h2,
.blog-page .article-comments-heading h2,
.blog-page .editor-header h2,
.blog-page .editor-preview h1,
.blog-page .blog-confirm h2 {
  font-family: var(--serif);
  font-weight: 400;
}

/* A small collection of records, kept on warm paper. */
.profile-page .profile-hero { padding-top: 58px; }
.profile-page .profile-intro h1 { letter-spacing: -1px; }
.profile-page .profile-topics span {
  color: #7b6e7e;
  border-color: #e3d3d5;
  border-radius: 3px;
  background: #f6f1ee;
}
.profile-page .profile-topics span:first-child {
  color: #80647e;
  background: #eee0e3;
  border-color: #d9cbd7;
}
.profile-page .profile-topics span:last-child {
  color: #85624d;
  background: #fae9dc;
  border-color: #e3ccbd;
}
.profile-page .profile-board {
  border: 1px solid #d2c1cf;
  border-radius: 5px;
  background: radial-gradient(ellipse at 65% 15%, #f0e1d855, transparent 65%), #ead8db;
}
.profile-page .board-index,
.profile-page .board-caption { color: #857689; }
.profile-page .profile-avatar img {
  border-color: #fef6f1;
  box-shadow: 0 8px 23px #4b3f5212;
}
.profile-page .profile-avatar > span {
  background: #80647e;
  color: #fdeade;
  border-radius: 3px;
}
.profile-page .board-stamp { color: #745643; background: #dfa38d; }
.profile-page .board-note {
  color: #625166;
  background: #fef6f1;
  border-color: #dacbc1;
  box-shadow: 0 6px 15px #3524390a;
}
.profile-page .profile-stats dd { font-family: var(--serif); font-weight: 400; }
.profile-page .record-date,
.profile-page .competition-year span,
.profile-page .learning-line > span,
.profile-page .poster-feature figcaption > span,
.profile-page .profile-closing { color: #8b7e8e; }
.profile-page .research-feature {
  background: #eee0e3;
  border-color: #d8cad6;
  border-radius: 5px;
}
.profile-page .research-feature .research-name { color: #68536d; }
.profile-page .research-tags span {
  color: #76607b;
  border-color: #d2c0d0;
  border-radius: 3px;
  background: #fff9f255;
}
.profile-page .competition-year { color: #69556e; }
.profile-page .award-chip {
  color: #865d43;
  background: #fae9dc;
  border-color: #e0c4b3;
  border-radius: 3px;
}
.profile-page .award-chip.blue {
  color: #67526c;
  background: #eee0e3;
  border-color: #d8c9d6;
}
.profile-page .report-link {
  color: #80647e;
  background: #f0e9ef;
  border-color: #d7c8d5;
  border-radius: 3px;
}
.profile-page .report-link:hover { background: #e6dae5; border-color: #b9a8bd; }
.profile-page .learning-line p span { color: #b5a8b8; }
.profile-page .profile-timeline article { border-left-color: #d7c8d5; }
.profile-page .profile-timeline article::before { background: #79617f; border-radius: 1px; }
.profile-page .profile-honors {
  background: #f6eae2;
  border-color: #dfcbbe;
  border-radius: 5px;
}
.profile-page .profile-honors li { border-bottom-color: #e6d4c8; }
.profile-page .profile-honors small,
.profile-page .collective-note { color: #89786e; }
.profile-page .certificate-card {
  background: #fff9f2;
  border-color: #daced9;
  border-radius: 5px;
}
.profile-page .award-link { background: #eae0e9; }
.profile-page .certificate-card:nth-child(2n) .award-link { background: #ece0d9; }
.profile-page .award-link:hover { background: #e2d3e0; }
.profile-page .certificate-image img { filter: none; }
.profile-page .certificate-open {
  color: #5e4863;
  background: #fef6f1ef;
  border-color: #daced9;
  border-radius: 2px;
}
.profile-page .certificate-year { color: #8e8092; }
.profile-page .certificate-category {
  color: #69536e;
  background: #f0e7ef;
  border-color: #decedc;
  border-radius: 3px;
}
.profile-page .award-dialog {
  color: #4b3f52;
  background: #f6ece5;
  border-color: #cfbecc;
  border-radius: 6px;
  box-shadow: 0 24px 90px #23152755;
}
.profile-page .award-dialog::backdrop { background: #1e1221d9; }
.profile-page .award-dialog button {
  color: #80647e;
  background: #fff9f2;
  border-color: #dacad8;
  border-radius: 3px;
}
.profile-page .award-dialog button:hover { background: #e9dee8; color: #4b3f52; }
.profile-page .award-viewer-picture { background: #e5dbe4; }
.profile-page .poster-feature {
  background: #eae1e9;
  border-color: #daccd8;
  border-radius: 5px;
}
.profile-page .poster-feature img { border-color: #fef5f0; box-shadow: 0 8px 22px #3b2d3f18; }
.profile-page .campus-aside { color: #817385; }
.profile-page .volunteer-block li::before { border-radius: 0; background: #b78c72; }
.profile-page .profile-contact {
  position: relative;
  border: 1px solid #826b88;
  border-radius: 4px;
  color: #f6e6dc;
  background: #59445f;
}
.profile-page .profile-contact .eyebrow { color: #f4d3a0; }
.profile-page .profile-contact p:not(.eyebrow) { color: #c4aec1; }
.profile-page .contact-address > a > span { color: #d8ad92; }
.profile-page .contact-address > button {
  color: #e4d3e2;
  border-color: #d7bbd344;
  background: #dfd1c809;
  border-radius: 3px;
}
.profile-page .contact-address > button:hover { background: #dfd1c819; }

/* A notebook stop beside the forest railway. */
.blog-page .blog-intro h1 { letter-spacing: -.5px; }
.blog-page .notebook-art > span { color: #837287; }
.blog-page .owner-toolbar {
  background: #eee0e3;
  border-color: #d8cad6;
  border-radius: 4px;
}
.blog-page .owner-toolbar-note,
.blog-page .blog-list-caption { color: #8e8092; }
.blog-page .owner-mode > span { border-radius: 0; background: #876e8d; }
.blog-page .blog-empty,
.blog-page .post-card {
  background: #fff9f2;
  border-color: #e3d3d5;
  border-radius: 5px;
}
.blog-page .blog-empty-mark {
  color: #966c52;
  background: #f0dfd4;
  border-color: #e1c8b8;
  border-radius: 4px;
}
.blog-page .post-card:hover {
  border-color: #b39eb8;
  box-shadow: 0 12px 30px #3b2d3f0b;
}
.blog-page .post-cover { background: #eadee8; }
.blog-page .blank-cover { background: #e7d9d0; color: #77617d; }
.blog-page .blank-cover::before,
.blog-page .blank-cover::after { border-color: #bda9c2; border-radius: 3px; transform: rotate(30deg); }
.blog-page .post-tag,
.blog-page .draft-label { border-radius: 3px; }
.blog-page .post-footer { color: #897a8d; border-top-color: #e8dee7; }
.blog-page .article-byline span,
.blog-page .article-figure figcaption,
.blog-page .article-comments-heading > span,
.blog-page .blog-comment-head time { color: #8c7f8f; }
.blog-page .article-excerpt { color: #7f6e83; border-left-color: #c9997b; }
.blog-page .article-prose { color: #5d4f61; }
.blog-page .article-prose > blockquote {
  color: #735f78;
  background: #ebe0e9;
  border-left-color: #ae92b5;
  border-radius: 0 3px 3px 0;
}
.blog-page .article-image-button { background: #ebe1ea; border-radius: 4px; }
.blog-page .article-end { color: #a395a7; }
.blog-page .article-like,
.blog-page .article-share { border-radius: 3px; background: #fff9f2; }
.blog-page .article-like { background: #eee0e3; border-color: #d8c8d6; }
.blog-page .article-like.liked { color: #865d43; background: #fae9dc; border-color: #e0c4b3; }
.blog-page .draft-note,
.blog-page .blog-reply-banner { color: #86644f; background: #fae9dc; border-color: #e0c4b3; border-radius: 3px; }
.blog-page .blog-comment-form {
  background: #fff9f2;
  border-color: #dbcdd9;
  border-radius: 5px;
}
.blog-page .blog-comment-form input:not([type=hidden]),
.blog-page .blog-comment-form textarea {
  color: #4b3f52;
  background: #fbf7f5;
  border-color: #dacad8;
  border-radius: 3px;
}
.blog-page .blog-comment-form input:focus,
.blog-page .blog-comment-form textarea:focus { border-color: #886d8f; }
.blog-page .blog-comment-form textarea::placeholder,
.blog-page .blog-comment-form input::placeholder { color: #9d90a0; }
.blog-page .blog-comment.reply { border-left-color: #dccbd9; }
.blog-page .blog-comment-body { color: #6d5d71; }
.blog-page .blog-comment-buttons button { color: #89748e; }
.blog-page .blog-comment-buttons .delete-comment,
.blog-page .article-admin-tools .delete-post { color: #a26b57; }
.blog-page .blog-error,
.blog-page .blog-inline-error,
.blog-page .editor-error { color: #a05b48; }

/* All owner-only controls keep their existing behaviour and IDs. */
.blog-page .blog-editor {
  color: #4b3f52;
  background: #f6ece5;
  border-color: #d5c4d2;
  border-radius: 6px;
}
.blog-page .blog-editor::backdrop,
.blog-page .blog-confirm::backdrop { background: #2516286e; }
.blog-page .editor-header,
.blog-page .editor-footer { background: #fff9f2; }
.blog-page .editor-close { color: #8a7a8e; border-radius: 3px; }
.blog-page .editor-close:hover { background: #ebe0e9; }
.blog-page .editor-fields label span,
.blog-page .editor-body-heading > span,
.blog-page .editor-footer > span,
.blog-page .block-type { color: #938297; }
.blog-page .editor-fields input,
.blog-page .editor-fields textarea,
.blog-page .editor-fields select {
  color: #4b3f52;
  background: #fff9f2;
  border-color: #d9c8d6;
  border-radius: 3px;
}
.blog-page #post-title::placeholder,
.blog-page .editor-block textarea::placeholder { color: #a699a9; }
.blog-page .editor-block {
  background: #fff9f2;
  border-color: #ddd0db;
  border-radius: 4px;
}
.blog-page .editor-block:focus-within {
  border-color: #b9a2bf;
  box-shadow: 0 0 0 2px #80647e08;
}
.blog-page .block-actions button { color: #958499; border-radius: 2px; }
.blog-page .editor-block[data-type=quote] { background: #eee3ec; }
.blog-page .editor-block[data-type=quote] textarea { color: #85718a; }
.blog-page .editor-block-image { background: #eee6ed; border-radius: 3px; }
.blog-page .block-cover-toggle { background: #eee0e3 !important; border-radius: 2px; }
.blog-page .editor-add > button { color: #86708b; border-color: #cdbbcb; border-radius: 3px; }
.blog-page .editor-preview { background: #fff9f2; border-color: #e3d3d5; border-radius: 4px; }
.blog-page .blog-photo { background: #f6ece5; border-color: #e3d3d5; border-radius: 5px; }
.blog-page .blog-photo::backdrop { background: #1e1221e6; }
.blog-page .blog-confirm { background: #fff9f2; border-color: #e3d3d5; border-radius: 5px; }

@media (max-width: 700px) {
  .profile-page .profile-hero { padding-top: 35px; }
  .profile-page .profile-intro h1 { font-size: 55px; }
  .profile-page .profile-board,
  .profile-page .profile-contact,
  .profile-page .profile-honors,
  .profile-page .poster-feature,
  .profile-page .research-feature { border-radius: 4px; }
  .blog-page .blog-intro h1 { font-size: 30px; }
  .blog-page .post-card { border-radius: 4px; }
}
@media (max-width: 380px) {
  .profile-page .profile-intro h1 { font-size: 50px; }
  .blog-page .blog-intro h1 { font-size: 27px; }
  .blog-page .editor-footer .button { padding-inline: 8px; font-size: 9px; white-space: nowrap; }
}
