:root{--color-paper:#f9f6ef;--color-paper-muted:#efece3;--color-paper-card:#fff;--color-ink:#121212;--color-ink-muted:#4a4a4a;--color-ink-faint:#888;--color-vermilion:#f32c0f;--color-vermilion-subtle:#fde8e5;--color-vermilion-ink:#dc260a;--font-display:"Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:"Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-japanese:"Hiragino Kaku Gothic ProN", "Meiryo", "Noto Sans JP", sans-serif;--shadow-comic:4px 4px 0px var(--color-ink);--shadow-comic-sm:2px 2px 0px var(--color-ink);--shadow-comic-pressed:1px 1px 0px var(--color-ink);--shadow-comic-lg:6px 6px 0px var(--color-ink);--border-comic:3px solid var(--color-ink);--border-comic-thick:4px solid var(--color-ink)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);background-color:var(--color-paper);color:var(--color-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;overflow-x:clip}body{background-color:var(--color-paper);min-height:100dvh;color:var(--color-ink);-webkit-overflow-scrolling:touch;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M0 0h1v1H0zM4 3h1v1H4zM8 7h1v1H8zM12 2h1v1h-1zM2 9h1v1H2zM7 12h1v1H7zM11 10h1v1h-1zM14 6h1v1h-1zM5 15h1v1H5zM13 14h1v1h-1z' fill='%23121212' fill-opacity='0.035'/%3E%3C/svg%3E");background-repeat:repeat;overflow:clip auto}::selection{background-color:var(--color-vermilion);color:#fff}:focus-visible{outline:3px solid var(--color-ink);outline-offset:3px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-paper-muted)}::-webkit-scrollbar-thumb{background:var(--color-ink);border:1px solid var(--color-paper)}.comic-panel{background:var(--color-paper-card);border:var(--border-comic);box-shadow:var(--shadow-comic);border-radius:4px}.comic-button{background:var(--color-paper-card);color:var(--color-ink);font-family:var(--font-body);border:var(--border-comic);box-shadow:var(--shadow-comic);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:700;text-decoration:none;transition:transform .1s,box-shadow .1s;display:inline-flex}.comic-button:hover{box-shadow:var(--shadow-comic-lg);transform:translate(-2px,-2px)}.comic-button:active{box-shadow:var(--shadow-comic-sm);transform:translate(2px,2px)}.comic-button-primary{background:var(--color-ink);color:var(--color-paper)}.comic-button-primary:hover{color:#fff;background:#222}.comic-button-vermilion{background:var(--color-vermilion);color:#fff}.comic-badge{text-transform:uppercase;letter-spacing:.05em;border:2px solid var(--color-ink);background:var(--color-paper-muted);box-shadow:2px 2px 0px var(--color-ink);align-items:center;padding:.2rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.comic-badge-vermilion{background:var(--color-vermilion-subtle);color:var(--color-vermilion-ink);border-color:var(--color-vermilion-ink)}.comic-badge-green{color:#0b6b2c;background:#e6f7ec;border-color:#0b6b2c}.hanko-stamp{border:2px solid var(--color-vermilion);color:var(--color-vermilion-ink);letter-spacing:.08em;background:#f32c0f0a;border-radius:3px;padding:.15rem .4rem;font-size:.75rem;font-weight:800;display:inline-block;transform:rotate(-3deg)}.masthead.svelte-1tltn2{background:var(--color-paper-card);border-bottom:var(--border-comic-thick);z-index:50;padding:.75rem 1rem;position:sticky;top:0;box-shadow:0 4px #12121214}.masthead-inner.svelte-1tltn2{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1080px;margin:0 auto;display:flex}.brand-link.svelte-1tltn2{color:var(--color-ink);align-items:center;gap:.85rem;min-width:0;text-decoration:none;display:flex}.brand-logo.svelte-1tltn2{border:2px solid var(--color-ink);width:48px;height:48px;box-shadow:2px 2px 0px var(--color-ink);object-fit:cover;background:#fff;border-radius:50%;flex-shrink:0}.brand-badge-row.svelte-1tltn2{align-items:center;gap:.4rem;margin-bottom:.1rem;display:flex}.brand-seal.svelte-1tltn2{letter-spacing:.05em;background:var(--color-vermilion);color:#fff;border-radius:2px;padding:.1rem .35rem;font-size:.65rem;font-weight:800}.brand-year.svelte-1tltn2{color:var(--color-ink-muted);font-size:.65rem;font-weight:700}.brand-title.svelte-1tltn2{font-family:var(--font-body);letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:800;line-height:1.1}.brand-name-full.svelte-1tltn2{display:inline}.brand-name-short.svelte-1tltn2{display:none}.brand-sub.svelte-1tltn2{color:var(--color-ink-muted);margin:0;font-size:.75rem}.nav-links.svelte-1tltn2{align-items:center;gap:.5rem;display:flex}.nav-btn.svelte-1tltn2{height:38px;color:var(--color-ink);border:2px solid var(--color-ink);box-shadow:2px 2px 0px var(--color-ink);font-family:var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border-radius:4px;align-items:center;gap:.4rem;padding:0 .85rem;font-size:.85rem;font-weight:800;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background .1s,color .1s;display:inline-flex;position:relative}.nav-btn.svelte-1tltn2:hover{background:var(--color-paper-muted);color:var(--color-ink);box-shadow:3px 3px 0px var(--color-ink);transform:translate(-1px,-1px)}.nav-btn.svelte-1tltn2:active{box-shadow:1px 1px 0px var(--color-ink);transform:translate(1px,1px)}.logout-btn.svelte-1tltn2:hover{background:var(--color-vermilion-subtle);color:var(--color-vermilion-ink);border-color:var(--color-vermilion-ink);box-shadow:3px 3px 0px var(--color-vermilion-ink)}.login-btn.svelte-1tltn2{background:var(--color-ink);color:#fff}.login-btn.svelte-1tltn2:hover{color:#fff;box-shadow:3px 3px 0px var(--color-ink);background:#242424;transform:translate(-1px,-1px)}.login-btn.svelte-1tltn2:active{box-shadow:1px 1px 0px var(--color-ink);transform:translate(1px,1px)}@media (width<=640px){.masthead.svelte-1tltn2{align-items:center;height:52px;padding:.35rem .75rem;display:flex}.masthead-inner.svelte-1tltn2{flex-flow:row;justify-content:space-between;align-items:center;gap:.5rem;width:100%}.brand-logo.svelte-1tltn2{width:32px;height:32px}.brand-badge-row.svelte-1tltn2,.brand-sub.svelte-1tltn2,.brand-name-full.svelte-1tltn2{display:none}.brand-name-short.svelte-1tltn2{letter-spacing:.04em;color:var(--color-ink);font-size:1.15rem;font-weight:900;display:inline}.brand-title.svelte-1tltn2{white-space:nowrap;margin:0;line-height:1}.nav-links.svelte-1tltn2{border-top:none;flex-shrink:0;gap:.45rem;width:auto;padding-top:0}.nav-label.svelte-1tltn2{display:none}.nav-btn.svelte-1tltn2{border:2px solid var(--color-ink);width:36px;height:36px;box-shadow:2px 2px 0px var(--color-ink);border-radius:4px;justify-content:center;padding:0}.nav-btn.svelte-1tltn2:after{content:"";position:absolute;inset:-4px}.login-btn.svelte-1tltn2{gap:.3rem;width:auto;padding:0 .65rem}.login-label.svelte-1tltn2{font-size:.8rem;font-weight:800}}.app-layout.svelte-12qhfyh{flex-direction:column;min-height:100vh;display:flex}.main-content.svelte-12qhfyh{flex-grow:1;width:100%;max-width:1080px;margin:0 auto;padding:1.5rem 1rem 3rem}.app-footer.svelte-12qhfyh{background:var(--color-paper-card);border-top:var(--border-comic-thick);margin-top:auto;padding:2rem 1rem}.footer-inner.svelte-12qhfyh{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;max-width:1080px;margin:0 auto;display:flex}.footer-brand.svelte-12qhfyh{flex-direction:column;gap:.35rem;max-width:520px;display:flex}.footer-tag.svelte-12qhfyh{letter-spacing:.05em;color:var(--color-vermilion-ink);font-size:.75rem;font-weight:800}.footer-motto.svelte-12qhfyh{color:var(--color-ink-muted);margin:0;font-size:.85rem;line-height:1.4}.footer-links.svelte-12qhfyh{flex-wrap:wrap;gap:1rem;display:flex}.footer-link.svelte-12qhfyh{color:var(--color-ink);font-size:.85rem;font-weight:700;text-decoration:none}.footer-link.svelte-12qhfyh:hover{color:var(--color-vermilion-ink);text-decoration:underline}
