Files
fabula-ultima-html/html/100.html
Drew Malzahn c75cd188c1 feat: Add book viewer at /book with shared design system
- Add html/index.html: book viewer with auto-discovering sidebar,
  prev/next navigation, keyboard shortcuts, and URL hash persistence
- Add html/book-page.css: shared stylesheet for all book pages derived
  from fabula-ultima-sheet.css (dark theme, CSS variables, Cinzel/
  Crimson Text fonts, common class styles)
- Add book.js entry point so webpack injects the shared CSS into the
  book viewer; update webpack.config.js for two entry points, split
  CSS chunk, CopyWebpackPlugin for book pages, and /book dev server
  rewrite rule
- Add scripts/strip_watermark.py: removes "Guest Customer (Order
  #52072168)" watermark artifacts from all 210 book pages
- Add scripts/restyle_book.py: strips per-page <style> blocks and
  injects <link rel="stylesheet" href="book-page.css"> into all pages
- Update Justfile deploy to scp -r dist/* for the new /book subtree

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 03:36:35 +00:00

64 lines
3.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Character Profile: Apsu</title>
<link rel="stylesheet" href="book-page.css">
</head>
<body>
<header class="meta-data">
<span>[Page 99]</span> | <span style="float: right;">W33 PROTAGONISTS</span>
</header>
<h1>APSU</h1>
<!-- BASIC INFORMATION -->
<section>
<h2>BASIC INFORMATION</h2>
<div class="profile-grid">
<div class="profile-attribute">
<strong>Identity:</strong> <span>Waterfiend Hunter</span>
</div>
<div class="profile-attribute">
<strong>Theme:</strong> <span>Hope</span>
</div>
<div class="profile-attribute">
<strong>Origin:</strong> <span>Salt Hill</span>
</div>
<div class="profile-attribute">
<strong>Quirk:</strong> <span>Cursed</span>
</div>
<div class="profile-attribute" style="grid-column: span 2;">
<strong>Signature Weapons:</strong> <span>Short swords</span>
</div>
</div>
</section>
<!-- APSU IN DETAIL -->
<section class="section-break">
<h2>APSU IN DETAIL</h2>
<div class="profile-grid">
<p style="grid-column: span 2;"><strong>Background & Skills</strong></p>
<ul>
<li>The bards sing of another age, when humans waged war against the sea, using their machines to poison it. Since then, those who are born with blue hair are <strong>Cursed by the Old Woman of the Tide</strong>, scorned by the earth, and hounded by the ocean: their blood is saltwater.</li>
<li>Able to see waterfiends due to his curse, Apsu earned his livelihood by catching and killing them, to extract drinking water from the remains. This brutal life was interrupted when he met an old oracle on the way to Oceans Mirror to negotiate a truce with the Old Woman of the Tide or, if necessary, kill her.</li>
<li>Apsu is an <strong>Elementalist</strong>, <strong>Wayfarer</strong> and <strong>Weaponmaster</strong>, who uses Spellblade to cast powerful spells such as Thunderbolt, through his shortswords.</li>
<li>Although his background and skill suggest a story of pain and violence, Apsu is an optimist who strives to see the silver lining in all things his Hope theme makes him a real touchstone for the entire group.</li>
</ul>
</div>
<!-- Game Master Instruction (Special Note) -->
<div style="margin-top: 20px; border: 1px dashed #aaa; padding: 15px;">
<strong>Game Master Note:</strong> The GM should involve Apsus Player in establishing any information about the curse of blue hair and the water spirits, especially the most dangerous and aggressive ones.
</div>
</section>
<!-- Separator/Unrelated Content -->
<div class="guest-notice">
</div>
</body>
</html>