/* Captain's study: isolated preview theme for reading pages only. */
body.nautical-reading {
  --nautical-ink: #493628;
  --nautical-muted: #79624c;
  --nautical-brass: #a47b43;
  --nautical-copper: #884733;
  --nautical-paper: #fff7e5;
  --nautical-line: #cfb78d;
  --reading-ink: var(--nautical-ink);
  --reading-muted: var(--nautical-muted);
  color: var(--nautical-ink);
  background:
    radial-gradient(ellipse at 12% 14%, #fff8e5b3, transparent 48%),
    repeating-radial-gradient(ellipse at 108% 44%, transparent 0 45px, #ad8c5d12 46px 47px, transparent 48px 66px),
    #e8d8b8;
  min-height: 100dvh;
}
body.nautical-reading .site-header {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-top: 5px solid #7d4b33;
  border-bottom: 7px double var(--nautical-brass);
  background: #e8d3ac;
  box-shadow: 0 7px 20px #68462b15;
}
body.nautical-reading .nautical-masthead-art { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
body.nautical-reading .nautical-masthead-art img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: 50% 48%; }
body.nautical-reading .nautical-masthead-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #f4e5c7f7 0%, #f4e5c7e8 28%, #f4e5c79c 58%, #f4e5c719 100%); }
body.nautical-reading .site-header__inner { position: relative; min-height: 166px; width: min(1180px, calc(100% - 64px)); gap: 32px; }
body.nautical-reading .brand { gap: 17px; }
body.nautical-reading .brand-mark { width: 62px; height: 62px; flex-shrink: 0; background: transparent; border: 0; color: #895136; }
body.nautical-reading .nautical-brand-compass { display: block; width: 62px; height: 62px; }
body.nautical-reading .brand-name { display: block; color: #593321; font-size: 25px; line-height: 1.5; font-weight: 700; letter-spacing: .1em; text-shadow: 0 1px #fff5d7; }
body.nautical-reading .brand-subtitle { margin-top: 8px; color: #765339; font-size: 12px; letter-spacing: .17em; }
body.nautical-reading .site-nav { gap: 5px; background: #fff5e0e8; border: 1px solid #b89865; padding: 5px; box-shadow: 0 3px 12px #59341912; }
body.nautical-reading .site-nav a { border-radius: 0; font-size: 13px; padding: 8px 12px; min-height: 44px; color: #684a32; }
body.nautical-reading .site-nav a:hover { background: #e9d2a7; color: #593321; }
body.nautical-reading .site-nav a[aria-current="page"] { border-color: #ad8956; background: #e9d2a7; color: #593321; }
body.nautical-reading :is(.text-studio, .reading-shell, .cookbook-detail) {
  position: relative;
  width: min(1180px, calc(100% - 64px));
  max-width: 1180px;
  margin: 34px auto 54px;
  padding: 34px 44px 48px;
  border: 1px solid #b59564;
  border-top: 4px solid #aa8050;
  background:
    radial-gradient(ellipse at 12% 0, #fffdf2c9, transparent 58%),
    radial-gradient(circle at 1px 1px, #9c77400a .7px, transparent .9px),
    #fff5df;
  background-size: auto, 5px 5px, auto;
  box-shadow: 0 15px 42px #63402114, 0 0 0 5px #ead7b6, 0 0 0 6px #baa079, inset 0 0 45px #c79c5510;
}
body.nautical-reading :is(.text-studio, .reading-shell, .cookbook-detail)::after {
  content: ""; display: block; height: 5px; margin-top: 38px;
  border-top: 1px solid #ae8752; border-bottom: 1px solid #d5ba8a;
  background: linear-gradient(90deg, transparent, #bd976229, transparent);
}
body.nautical-reading .tool-breadcrumb { color: #7b644d; font-size: 13px; gap: 11px; }
body.nautical-reading .tool-breadcrumb a { color: #874a32; }
body.nautical-reading :is(.tool-heading, .reading-heading) { position: relative; border-bottom: 1px solid #caae7f; padding-bottom: 27px; }
body.nautical-reading .tool-heading { margin: 22px 0 30px; gap: 24px; }
body.nautical-reading :is(.tool-heading, .reading-heading)::after { content: ""; position: absolute; left: 0; bottom: -3px; width: 72px; height: 5px; background: #96563b; }
body.nautical-reading :is(.tool-kicker, .reading-kicker) { color: #8d5137; font-size: 12px; letter-spacing: .12em; font-weight: 600; }
body.nautical-reading :is(.tool-heading h1, .reading-heading h1, .artifact-summary h1) { font-family: "STZhongsong", "华文中宋", "Songti SC", "SimSun", serif; color: #713b29; font-size: clamp(34px, 4.2vw, 50px); line-height: 1.35; letter-spacing: .09em; font-weight: 700; text-shadow: 0 1px #fffdf4; }
body.nautical-reading :is(.tool-lead, .reading-heading > p:last-child) { color: #745d46; font-size: 15px; line-height: 1.9; }
body.nautical-reading .tool-preview-note { border-left: 1px solid #c4a273; padding-left: 18px; color: #885436; line-height: 1.9; }
body.nautical-reading .tool-preview-note span { color: #79634b; }
body.nautical-reading .tool-showcase { grid-template-columns: minmax(0, 1.85fr) minmax(252px, .85fr); gap: 30px; }
body.nautical-reading .tool-media-stage { padding: 6px; border: 1px solid #a77b49; border-radius: 1px; background: #c6a575; box-shadow: 0 7px 15px #70503313; }
body.nautical-reading .tool-media-panel :is(img, video) { background: #f7eddb; }
body.nautical-reading .tool-media-thumbnails { gap: 12px; margin-top: 16px; }
body.nautical-reading .tool-media-thumb { color: #755a3f; }
body.nautical-reading .tool-thumb-picture { border-radius: 0; border: 2px solid #c7ad83; padding: 2px; background: #fff4dd; }
body.nautical-reading .tool-media-thumb[aria-pressed="true"] .tool-thumb-picture { border-color: #8c4a33; box-shadow: 0 0 0 1px #8c4a33; }
body.nautical-reading .tool-media-thumb[aria-pressed="true"] { color: #713b29; }
body.nautical-reading .tool-media-caption { color: #786149; }
body.nautical-reading .tool-launch { padding: 18px 18px 20px; border-top: 3px solid #986b42; background: #eedcbc; box-shadow: inset 0 0 0 1px #c8ac7d; }
body.nautical-reading .tool-launch .tool-kicker { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; font-size: 13px; }
body.nautical-reading .tool-launch .tool-kicker::after { content: ""; height: 1px; flex: 1; background: #b99762; }
body.nautical-reading .tool-launch-link { border-radius: 0; border-color: #875034; background: #8f4c35; box-shadow: 0 4px 10px #79552e18; }
body.nautical-reading .tool-launch-link:hover { background: #773b29; border-color: #713b29; box-shadow: 0 6px 14px #79552e25; }
body.nautical-reading .tool-launch-label { padding: 16px 14px; font-size: 15px; color: #fff5e2; }
body.nautical-reading .tool-launch-description { color: #6f5239; font-size: 13px; }
body.nautical-reading .tool-launch-facts { border-color: #baa078; }
body.nautical-reading .tool-launch-facts dt { color: #765c40; }
body.nautical-reading .tool-launch-facts dd { color: #62472f; }
body.nautical-reading .tool-introduction { border-top: 3px double #b19364; margin-top: 34px; padding-top: 4px; }
body.nautical-reading :is(.tool-about-heading h2, .reading-section h2) { color: #74462e; font-family: "STZhongsong", "华文中宋", "Songti SC", "SimSun", serif; font-size: 25px; font-weight: 700; letter-spacing: .05em; }
body.nautical-reading .tool-about-content h3 { color: #785239; }
body.nautical-reading :is(.tool-about-content p, .tool-about-content ul, .tool-about-content ol) { color: #65513d; font-size: 15px; line-height: 1.95; }
body.nautical-reading :is(.tool-about-note, .tool-footnote) { color: #7c674e; }
body.nautical-reading .tool-button { border-radius: 1px; border-color: #b48f5a; background: #f6e7c8; color: #6e452b; }
body.nautical-reading .tool-button:hover { border-color: #926b3f; background: #e9d1a6; }
body.nautical-reading .tool-button--primary { border-color: #86432e; background: #934d36; color: #fff6e4; box-shadow: inset 0 1px #b47357; }
body.nautical-reading .tool-button--primary:hover { border-color: #743822; background: #7d3d2a; }
body.nautical-reading .tool-text-button { color: #884a30; }
body.nautical-reading .tool-text-button:disabled { color: #8b7965; }
body.nautical-reading .tool-options { padding: 12px 16px 14px; border: 1px solid #cfb78d; background: #f2e4c9; gap: 4px 22px; }
body.nautical-reading .tool-options legend { padding: 0 8px; color: #7a5739; }
body.nautical-reading .tool-options label { font-size: 14px; }
body.nautical-reading .tool-paper { border-radius: 0; background: #fffbef; border-color: #bfa275; box-shadow: 0 5px 15px #74512c12; }
body.nautical-reading .tool-paper-heading { border-bottom: 1px solid #cfb98f; background: #edddbd; }
body.nautical-reading .tool-paper textarea { color: #51402f; font-size: 15px; background-image: repeating-linear-gradient(transparent 0 28px, #b59c7410 28px 29px); background-position-y: 23px; }
body.nautical-reading .tool-paper textarea::placeholder { color: #8a7862; }
body.nautical-reading .tool-count { color: #816b51; }
body.nautical-reading .tool-intro-editor textarea { border-radius: 0; border-color: #b89b6a; background: #fffbef; }
body.nautical-reading .tool-intro-editor label { color: #725237; }
body.nautical-reading .reading-prose-grid { gap: 30px 52px; }
body.nautical-reading .reading-prose-grid .reading-section { border-top-color: #c4a574; }
body.nautical-reading .reading-directory-row { border-color: #c5a978; padding-right: 16px; }
body.nautical-reading .reading-directory-row:hover { background: #efddba; }
body.nautical-reading .reading-directory-number { color: #965b3b; font-family: Georgia, serif; font-size: 23px; }
body.nautical-reading .reading-directory-copy strong { color: #70442d; }
body.nautical-reading .reading-related { padding-top: 20px; border-top: 1px solid #ccb286; }
body.nautical-reading .reading-button { border-radius: 1px; border-color: #b38d56; background: #f1dfb8; color: #64412b; }
body.nautical-reading .reading-button--primary { background: #934d36; border-color: #85422d; color: #fff6e4; }
body.nautical-reading .reading-button--primary:hover { background: #7d3d2a; }
body.nautical-reading .artifact-cover { padding: 7px; background: #d1b485; border: 1px solid #a7824f; }
body.nautical-reading .artifact-meta { border-color: #cbb084; }
body.nautical-reading .site-footer { border-top: 5px double #ac8855; background: #deca9f; color: #735538; padding: 24px 0 30px; }
body.nautical-reading .site-footer__inner { width: min(1180px, calc(100% - 64px)); font-size: 12px; }
body.nautical-reading :is(a, button, input, textarea):focus-visible { outline: 3px solid #8a412f; outline-offset: 4px; }
@media (max-width: 1000px) {
  body.nautical-reading .site-header__inner { gap: 18px; }
  body.nautical-reading .brand-name { font-size: 21px; }
  body.nautical-reading .brand { gap: 12px; }
  body.nautical-reading .site-nav { gap: 1px; }
  body.nautical-reading .site-nav a { padding: 8px 9px; }
  body.nautical-reading :is(.text-studio, .reading-shell, .cookbook-detail) { padding: 28px 30px 38px; }
  body.nautical-reading .tool-showcase { grid-template-columns: minmax(0, 1fr) 250px; gap: 22px; }
  body.nautical-reading .tool-launch { padding: 15px; }
}
@media (max-width: 760px) {
  body.nautical-reading .site-header__inner { width: calc(100% - 40px); min-height: 180px; padding: 24px 0 18px; gap: 16px; }
  body.nautical-reading .brand-name { font-size: 23px; }
  body.nautical-reading .brand-mark, body.nautical-reading .nautical-brand-compass { width: 51px; height: 51px; }
  body.nautical-reading .brand-subtitle { font-size: 11px; margin-top: 4px; }
  body.nautical-reading .site-nav { width: auto; max-width: 100%; gap: 0; padding: 3px; }
  body.nautical-reading .site-nav a { font-size: 12px; padding: 8px 10px; }
  body.nautical-reading .nautical-masthead-art::after { background: linear-gradient(90deg, #f4e5c7ed, #f4e5c7c7 65%, #f4e5c747); }
  body.nautical-reading :is(.text-studio, .reading-shell, .cookbook-detail) { width: calc(100% - 32px); margin: 22px auto 34px; padding: 22px 22px 30px; box-shadow: 0 8px 20px #63402113, 0 0 0 3px #ead7b6, 0 0 0 4px #baa079; }
  body.nautical-reading .site-footer__inner { width: calc(100% - 40px); }
  body.nautical-reading :is(.tool-heading h1, .reading-heading h1, .artifact-summary h1) { font-size: 34px; letter-spacing: .06em; }
  body.nautical-reading .tool-preview-note { border-left: 0; border-top: 1px dashed #c4a273; padding: 11px 0 0; text-align: left; }
}
@media (max-width: 680px) {
  body.nautical-reading .tool-showcase { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  body.nautical-reading :is(.tool-heading, .reading-heading) { padding-bottom: 22px; }
  body.nautical-reading .tool-media-stage { padding: 4px; }
  body.nautical-reading .tool-media-thumbnails { gap: 9px; }
  body.nautical-reading .tool-launch { padding: 16px; }
  body.nautical-reading .tool-launch-label { font-size: 14px; padding: 12px; }
  body.nautical-reading .tool-launch-description { margin-bottom: 14px; }
  body.nautical-reading :is(.tool-paper textarea, .tool-intro-editor textarea) { font-size: 16px; }
  body.nautical-reading .tool-options { padding: 8px 12px 12px; gap: 0 15px; }
  body.nautical-reading .tool-heading { margin-top: 18px; }
  body.nautical-reading .tool-about-content p, body.nautical-reading .tool-about-content ul, body.nautical-reading .tool-about-content ol { font-size: 15px; }
  body.nautical-reading .reading-prose-grid { gap: 28px; }
  body.nautical-reading .reading-directory-row { padding-left: 0; padding-right: 0; }
}
@media (max-width: 374px) {
  body.nautical-reading .site-header__inner { width: calc(100% - 32px); }
  body.nautical-reading .brand-name { font-size: 20px; letter-spacing: .06em; }
  body.nautical-reading .site-nav a { padding-inline: 7px; }
  body.nautical-reading :is(.text-studio, .reading-shell, .cookbook-detail) { padding-inline: 16px; }
  body.nautical-reading :is(.tool-heading h1, .reading-heading h1, .artifact-summary h1) { font-size: 30px; }
  body.nautical-reading .tool-launch { padding: 12px; }
  body.nautical-reading .tool-launch-label { padding: 10px; }
}
/* Working tools keep their complete desktop workspace in the first viewport. */
body.nautical-reading.text-studio-app-page .text-studio-app { margin-top: 20px; margin-bottom: 32px; padding: 22px 28px 28px; }
body.nautical-reading.text-studio-app-page .tool-heading { margin: 10px 0 18px; padding-bottom: 16px; }
body.nautical-reading.text-studio-app-page .tool-heading h1 { font-size: 38px; line-height: 1.25; margin-bottom: 7px; }
body.nautical-reading.text-studio-app-page .tool-kicker { margin-bottom: 6px; }
body.nautical-reading.text-studio-app-page .tool-lead { font-size: 14px; line-height: 1.7; }
body.nautical-reading.text-studio-app-page .tool-options { margin-bottom: 16px; padding: 6px 14px 8px; }
body.nautical-reading.text-studio-app-page .tool-options legend { margin-bottom: 0; }
body.nautical-reading.text-studio-app-page .tool-paper-heading { min-height: 56px; padding: 6px 16px; }
body.nautical-reading.text-studio-app-page .tool-paper textarea { min-height: 200px; padding: 16px; }
body.nautical-reading.text-studio-app-page .tool-count { padding: 6px 16px 10px; }
body.nautical-reading.text-studio-app-page .tool-footnote { margin-top: 12px; }
body.nautical-reading.text-studio-app-page .text-studio-app::after { margin-top: 22px; }
@media (min-width: 761px) {
  body.nautical-reading.text-studio-app-page .site-header__inner { min-height: 104px; }
  body.nautical-reading.text-studio-app-page .brand-mark,
  body.nautical-reading.text-studio-app-page .nautical-brand-compass { width: 52px; height: 52px; }
  body.nautical-reading.text-studio-app-page .brand-name { font-size: 22px; }
  body.nautical-reading.text-studio-app-page .brand-subtitle { margin-top: 3px; }
}
@media (max-width: 760px) {
  body.nautical-reading.text-studio-app-page .site-header__inner { min-height: 156px; padding-top: 18px; padding-bottom: 14px; gap: 12px; }
  body.nautical-reading.text-studio-app-page .text-studio-app { margin-top: 16px; padding: 18px 20px 24px; }
  body.nautical-reading.text-studio-app-page .tool-heading h1 { font-size: 34px; }
}
@media (max-width: 680px) {
  body.nautical-reading.text-studio-app-page .tool-paper textarea { min-height: 180px; font-size: 16px; }
  body.nautical-reading.text-studio-app-page .tool-preview-note { margin-top: 10px; padding-top: 8px; }
}
@media (max-width: 374px) {
  body.nautical-reading.text-studio-app-page .text-studio-app { padding-inline: 16px; }
  body.nautical-reading.text-studio-app-page .tool-heading h1 { font-size: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  body.nautical-reading *, body.nautical-reading *::before, body.nautical-reading *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* C · 翡翠船舱 / 黑帆版. Only the two text-tool pages opt into this theme. */
body.nautical-reading.pirate-cabin-page {
  --cabin-green: #173c30;
  --cabin-deep: #102820;
  --cabin-brass: #bd9961;
  --cabin-bone: #eee7d7;
  --cabin-ink: #243a30;
  --cabin-red: #742d2c;
  --nautical-ink: var(--cabin-ink);
  --nautical-muted: #6c6352;
  --nautical-paper: var(--cabin-bone);
  color: var(--cabin-bone);
  background:
    linear-gradient(90deg, #302219 0 14px, #9a7846 14px 16px, transparent 16px calc(100% - 16px), #9a7846 calc(100% - 16px) calc(100% - 14px), #302219 calc(100% - 14px)),
    repeating-linear-gradient(90deg, #142e2500 0 90px, #061b1526 90px 92px),
    repeating-linear-gradient(176deg, transparent 0 24px, #c4ac7510 25px, transparent 26px 54px),
    radial-gradient(ellipse at 50% 10%, #29513e, transparent 62%),
    #112d24;
}
body.pirate-cabin-page .site-header {
  border-top: 5px solid #39271b;
  border-bottom: 5px double var(--cabin-brass);
  background: #122920;
  box-shadow: 0 9px 24px #061b154f;
}
body.pirate-cabin-page .site-header__inner {
  min-height: 224px;
  align-items: flex-start;
  padding-top: 33px;
  padding-bottom: 32px;
}
body.pirate-cabin-page .nautical-masthead-art img { object-position: 50% 8%; }
body.pirate-cabin-page .nautical-masthead-art::after {
  background: linear-gradient(90deg, #102b24c9 0%, #102b2470 42%, #102b2414 72%, #102b2400);
}
body.pirate-cabin-page .brand-mark { width: 64px; height: 72px; color: #ccac72; filter: drop-shadow(0 2px 3px #081e16); }
body.pirate-cabin-page .pirate-brand-crest { width: 64px; height: 72px; display: block; }
body.pirate-cabin-page .brand-name { color: #f3e8cc; font-family: "STZhongsong", "华文中宋", "Songti SC", "SimSun", serif; font-size: 27px; letter-spacing: .08em; text-shadow: 1px 2px #0c2018; }
body.pirate-cabin-page .brand-subtitle { color: #dbc49b; letter-spacing: .23em; font-size: 12px; }
body.pirate-cabin-page .site-nav { margin-top: 10px; gap: 10px; padding: 0; border: 0; background: transparent; box-shadow: none; overflow: visible; }
body.pirate-cabin-page .site-nav a {
  position: relative;
  padding: 10px 16px;
  border: 1px solid #b39159;
  background: #102b24e8;
  color: #f0e4ca;
  box-shadow: inset 0 0 0 3px #204536, 0 3px 9px #061b1540;
  border-radius: 3px 9px 3px 9px;
  transition: color .18s, background .18s, border-color .18s;
}
body.pirate-cabin-page .site-nav a::before,
body.pirate-cabin-page .site-nav a::after { content: ""; position: absolute; width: 3px; height: 3px; background: #d6b372; border-radius: 50%; }
body.pirate-cabin-page .site-nav a::before { left: 5px; top: 5px; }
body.pirate-cabin-page .site-nav a::after { right: 5px; bottom: 5px; }
body.pirate-cabin-page .site-nav a:hover,
body.pirate-cabin-page .site-nav a[aria-current="page"] { background: #315c43; color: #fff0ce; border-color: #e2c188; }
body.pirate-cabin-page .text-studio {
  width: min(1180px, calc(100% - 80px));
  margin-top: 30px;
  padding: 26px 34px 38px;
  border: 1px solid #bc9a61;
  border-top: 4px solid #c0a16b;
  border-radius: 4px;
  background:
    radial-gradient(circle at 11px 11px, #e3c482 0 2px, #775a32 2.5px 4px, transparent 4.5px),
    radial-gradient(circle at calc(100% - 11px) 11px, #e3c482 0 2px, #775a32 2.5px 4px, transparent 4.5px),
    linear-gradient(148deg, #1f4938, #102c23 80%);
  box-shadow: 0 18px 50px #061b1547, 0 0 0 5px #382a1d, 0 0 0 7px #8c6b3e, inset 0 0 0 5px #08221966;
}
body.pirate-cabin-page .text-studio::after { border-color: #ae8a54; background: none; margin-top: 30px; }
body.pirate-cabin-page .tool-breadcrumb { color: #d4c2a0; }
body.pirate-cabin-page .tool-breadcrumb a { color: #ebd3a8; }
body.pirate-cabin-page .tool-heading { margin: 22px 0 28px; border-bottom: 1px solid #9a7d4c; padding-bottom: 28px; }
body.pirate-cabin-page .tool-heading::after { height: 5px; width: 86px; background: #bc975c; }
body.pirate-cabin-page .tool-kicker { color: #dbc18d; letter-spacing: .18em; }
body.pirate-cabin-page .tool-heading h1 {
  color: #f1e8cb;
  font-family: "STKaiti", "KaiTi", "楷体", "STZhongsong", serif;
  font-size: clamp(38px, 4.6vw, 58px);
  letter-spacing: .13em;
  font-weight: 700;
  text-shadow: 1px 2px #091e17, 0 3px 0 #836a43;
}
body.nautical-reading.pirate-cabin-page .tool-heading .tool-lead { color: #d6c7ac; }
body.pirate-cabin-page .tool-preview-note { color: #d8bd87; border-left-color: #9a7c4c; }
body.pirate-cabin-page .tool-preview-note span { color: #cfbea2; }
body.pirate-cabin-page .tool-showcase { gap: 24px; grid-template-columns: minmax(0, 1.9fr) minmax(254px, .85fr); }
body.pirate-cabin-page .tool-media-stage {
  padding: 7px;
  border: 1px solid #c8a56c;
  border-radius: 3px;
  background: linear-gradient(135deg, #906d3d, #36281d 22% 80%, #9c7845);
  box-shadow: 0 8px 20px #061b1540, inset 0 0 0 3px #33271a;
}
body.pirate-cabin-page .tool-media-panel :is(img, video) { background: #142f26; }
body.pirate-cabin-page .tool-media-thumbnails { gap: 12px; }
body.pirate-cabin-page .tool-media-thumb { color: #d2c2a5; text-align: center; }
body.pirate-cabin-page .tool-thumb-picture { border: 2px solid #ae8a54; padding: 3px; background: #34291f; border-radius: 2px; }
body.pirate-cabin-page .tool-media-thumb[aria-pressed="true"] { color: #f6ead0; }
body.pirate-cabin-page .tool-media-thumb[aria-pressed="true"] .tool-thumb-picture { border-color: #d5b775; box-shadow: 0 0 0 2px #742d2c; }
body.pirate-cabin-page .tool-media-thumb:hover .tool-thumb-picture { border-color: #f3d394; }
body.pirate-cabin-page .tool-media-caption { color: #c5b89c; }
body.pirate-cabin-page .tool-launch {
  position: relative;
  padding: 19px;
  border: 1px solid #b99760;
  border-top: 4px solid #bd9961;
  border-radius: 3px 14px 3px 14px;
  background: linear-gradient(135deg, #f0e9d8, #dfdac5);
  box-shadow: inset 0 0 0 5px #f7f0df88, 0 8px 20px #061b1540;
}
body.pirate-cabin-page .tool-launch .tool-kicker { color: #31513c; font-family: "STZhongsong", serif; font-size: 18px; font-weight: 700; }
body.pirate-cabin-page .tool-launch .tool-kicker::after { background: #ad915e; }
body.pirate-cabin-page .tool-launch-link { background: #742d2c; border: 1px solid #845331; border-radius: 2px 7px 2px 7px; box-shadow: 0 3px 0 #c2aa7b; }
body.pirate-cabin-page .tool-launch-link:hover { background: #8b3c33; border-color: #ae8450; box-shadow: 0 4px 0 #b29a6b, 0 7px 16px #5b342525; }
body.pirate-cabin-page .tool-launch-image { padding: 5px; background: #234a39; border-bottom: 1px solid #b89b67; }
body.pirate-cabin-page .tool-launch-open { background: #eee3c9; color: #742d2c; border-radius: 3px; }
body.pirate-cabin-page .tool-launch-label { color: #fff0d6; letter-spacing: .05em; }
body.pirate-cabin-page .tool-launch-description { color: #4c5544; }
body.pirate-cabin-page .tool-launch-facts { border-top-color: #b6a27b; }
body.pirate-cabin-page .tool-launch-facts dt { color: #65604e; }
body.pirate-cabin-page .tool-launch-facts dd { color: #2f4b39; }
body.pirate-cabin-page .tool-introduction { margin-top: 32px; padding-top: 0; border-top: 1px solid #987e4c; }
body.pirate-cabin-page .tool-about-heading h2 { color: #eee4c9; font-size: 28px; text-shadow: 0 2px #10231b; }
body.pirate-cabin-page .tool-introduction .tool-about-content { gap: 20px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
body.pirate-cabin-page .tool-introduction .tool-about-content section {
  position: relative;
  margin: 0;
  padding: 23px 25px 26px;
  border: 1px solid #b6955e;
  border-radius: 3px 12px 3px 12px;
  background: linear-gradient(135deg, #eee8d7, #dedac7);
  box-shadow: inset 0 0 0 4px #f7f0dd80, 0 4px 12px #071f172e;
}
body.pirate-cabin-page .tool-introduction .tool-about-content section:first-child { max-width: none; margin: 0; }
body.pirate-cabin-page .tool-introduction .tool-about-content section::after { content: ""; position: absolute; top: 8px; right: 8px; width: 4px; height: 4px; border-radius: 50%; background: #9d7942; box-shadow: 0 1px #faf0d2; }
body.pirate-cabin-page .tool-about-content h3 { margin-bottom: 14px; padding-bottom: 11px; border-bottom: 1px solid #b9ad8a; color: #214c35; font-size: 19px; letter-spacing: .05em; }
body.pirate-cabin-page :is(.tool-about-content p, .tool-about-content ul, .tool-about-content ol) { color: #394a3b; font-size: 15px; }
body.pirate-cabin-page .tool-about-content li::marker { color: #78332d; font-weight: 700; }
body.pirate-cabin-page .tool-about-note { color: #cdbd9e; border-top-color: #8e784e; }
body.pirate-cabin-page .tool-button { background: #e9dec4; border-color: #ad8d56; color: #294a37; box-shadow: inset 0 0 0 2px #f7ebd1; border-radius: 2px 6px 2px 6px; }
body.pirate-cabin-page .tool-button:hover { background: #f4e9cc; border-color: #d7b570; }
body.pirate-cabin-page .tool-button--primary { background: #742d2c; color: #fff0d7; border-color: #c49c61; box-shadow: inset 0 0 0 2px #5a2723; }
body.pirate-cabin-page .tool-button--primary:hover { background: #8d3b32; border-color: #dfbe86; }
body.pirate-cabin-page .tool-feedback { color: #e0c494; }
body.pirate-cabin-page .tool-footnote { color: #cbbd9f; }
body.pirate-cabin-page .tool-options { padding: 14px 20px; border: 1px solid #b89a66; border-radius: 3px; background: #dce0c9; box-shadow: inset 0 0 0 4px #f2ecd352; color: #2d4936; }
body.pirate-cabin-page .tool-options legend { padding: 4px 14px; background: #dce0c9; border: 1px solid #b89a66; color: #294833; border-radius: 2px; font-size: 13px; }
body.pirate-cabin-page .tool-options input { accent-color: #315b3e; }
body.pirate-cabin-page .tool-paper { border: 1px solid #ba9b64; border-radius: 3px; background: #efeadd; box-shadow: 0 6px 16px #071e1733, inset 0 0 0 3px #c7b68e; }
body.pirate-cabin-page .tool-paper--result { background: #e5e6d5; }
body.pirate-cabin-page .tool-paper-heading { background: #d7dbc2; border-bottom: 1px solid #a7ad86; }
body.pirate-cabin-page .tool-paper--result .tool-paper-heading { background: #34553c; border-bottom-color: #ba9b64; }
body.pirate-cabin-page .tool-paper-heading label { color: #294a35; }
body.pirate-cabin-page .tool-paper--result .tool-paper-heading label { color: #f0e8cc; }
body.pirate-cabin-page .tool-text-button { color: #7b322c; }
body.pirate-cabin-page .tool-text-button:hover { color: #9c4133; }
body.pirate-cabin-page .tool-paper--result .tool-text-button { color: #f2d5a0; }
body.pirate-cabin-page .tool-paper--result .tool-text-button:disabled { color: #c6ccb4; opacity: .8; }
body.pirate-cabin-page .tool-paper textarea { color: #293e32; background-image: repeating-linear-gradient(transparent 0 28px, #7e8b6b18 28px 29px); }
body.pirate-cabin-page .tool-paper textarea::placeholder { color: #716d5e; }
body.pirate-cabin-page .tool-count { color: #6b6c58; }
body.pirate-cabin-page .tool-intro-editor { max-width: none; padding: 24px; border: 1px solid #ad915f; background: #e9e3d0; border-radius: 3px; }
body.pirate-cabin-page .tool-intro-editor label { color: #2c4d36; }
body.pirate-cabin-page .tool-intro-editor label span { color: #676853; }
body.pirate-cabin-page .tool-intro-editor textarea { color: #294131; border-color: #a69d7b; background: #f3eddf; }
body.pirate-cabin-page .site-footer { border-top: 5px double #ae8b52; background: #211f16; color: #d1bd94; }
body.pirate-cabin-page :is(a, button, input, textarea):focus-visible { outline: 3px solid #deb677; outline-offset: 4px; }
body.pirate-cabin-page :is(.tool-launch, .tool-paper, .tool-intro-editor, .tool-options) :is(a, button, input, textarea):focus-visible { outline-color: #742d2c; }
body.pirate-cabin-page.text-studio-app-page .site-header__inner { min-height: 116px; padding-top: 20px; padding-bottom: 20px; }
body.pirate-cabin-page.text-studio-app-page .brand-mark,
body.pirate-cabin-page.text-studio-app-page .pirate-brand-crest { width: 52px; height: 58px; }
body.pirate-cabin-page.text-studio-app-page .tool-heading h1 { color: #f1e8cb; font-size: 40px; }
body.pirate-cabin-page.text-studio-app-page .tool-options { padding: 3px 14px 6px; }
body.pirate-cabin-page.text-studio-app-page .tool-paper-heading { min-height: 56px; }
@media (max-width: 1000px) {
  body.pirate-cabin-page .site-header__inner { width: calc(100% - 64px); }
  body.pirate-cabin-page .brand-name { font-size: 22px; }
  body.pirate-cabin-page .site-nav { gap: 7px; }
  body.pirate-cabin-page .site-nav a { padding-inline: 12px; }
  body.pirate-cabin-page .text-studio { width: calc(100% - 64px); padding-inline: 26px; }
  body.pirate-cabin-page .tool-showcase { grid-template-columns: minmax(0, 1fr) 250px; gap: 20px; }
  body.pirate-cabin-page .tool-launch { padding: 16px; }
}
@media (max-width: 760px) {
  body.pirate-cabin-page .site-header__inner { width: calc(100% - 40px); min-height: 220px; padding: 23px 0 25px; justify-content: flex-start; gap: 14px; }
  body.pirate-cabin-page .brand-mark, body.pirate-cabin-page .pirate-brand-crest { width: 49px; height: 55px; }
  body.pirate-cabin-page .brand-name { font-size: 23px; letter-spacing: .04em; }
  body.pirate-cabin-page .brand-subtitle { font-size: 11px; }
  body.pirate-cabin-page .site-nav { margin-top: 4px; gap: 8px; }
  body.pirate-cabin-page .site-nav a { font-size: 12px; padding: 10px 12px; }
  body.pirate-cabin-page .nautical-masthead-art img { object-position: 77% 26%; }
  body.pirate-cabin-page .nautical-masthead-art::after { background: linear-gradient(90deg, #102b24e8, #102b2480 70%, #102b2422); }
  body.pirate-cabin-page .text-studio { width: calc(100% - 36px); margin-top: 20px; padding: 20px 20px 28px; box-shadow: 0 12px 28px #061b1533, 0 0 0 3px #382a1d, 0 0 0 4px #8c6b3e; }
  body.pirate-cabin-page .tool-heading h1 { font-size: 39px; }
  body.pirate-cabin-page .tool-preview-note { border-top-color: #8e784c; }
  body.pirate-cabin-page .tool-introduction .tool-about-content { gap: 16px; }
  body.pirate-cabin-page .tool-introduction .tool-about-content section { padding: 20px; }
  body.pirate-cabin-page .tool-intro-editor { padding: 18px; }
  body.pirate-cabin-page.text-studio-app-page .site-header__inner { min-height: 172px; }
}
@media (max-width: 680px) {
  body.pirate-cabin-page .tool-showcase { grid-template-columns: minmax(0, 1fr); }
  body.pirate-cabin-page .tool-introduction .tool-about-content { display: grid; grid-template-columns: minmax(0, 1fr); }
  body.pirate-cabin-page .tool-about-heading h2 { font-size: 25px; }
  body.pirate-cabin-page .tool-launch { padding: 15px; }
  body.pirate-cabin-page .tool-launch-image { border-bottom: 0; border-right: 1px solid #b89b67; }
  body.pirate-cabin-page .tool-launch-label { padding: 12px; font-size: 14px; }
  body.pirate-cabin-page .tool-options { padding: 8px 14px; }
  body.pirate-cabin-page .tool-options legend { font-size: 12px; }
  body.pirate-cabin-page .tool-paper textarea, body.pirate-cabin-page .tool-intro-editor textarea { font-size: 16px; }
  body.pirate-cabin-page :is(.tool-lead, .tool-about-content p, .tool-about-content ul, .tool-about-content ol) { font-size: 16px; }
  body.pirate-cabin-page .tool-preview-note span { display: block; margin-left: 0; }
}
@media (max-width: 374px) {
  body.pirate-cabin-page .brand-name { font-size: 20px; }
  body.pirate-cabin-page .site-header__inner { width: calc(100% - 32px); }
  body.pirate-cabin-page .site-nav { gap: 6px; }
  body.pirate-cabin-page .site-nav a { padding-inline: 9px; font-size: 11px; }
  body.pirate-cabin-page .text-studio { padding-inline: 15px; }
  body.pirate-cabin-page .tool-heading h1,
  body.pirate-cabin-page.text-studio-app-page .tool-heading h1 { font-size: 33px; }
  body.pirate-cabin-page .tool-launch { padding: 11px; }
}
