/* ============================================================
   SHINDO — Make a report (Build_21)
   Proofreader's palette: cream paper, graphite ink, red correction pen, manila tag, kraft envelope.
   ============================================================ */
.mod--rp { --pen: #D2382B; --manila: #E9D9AE; --manila2: #DCC796; --kraft: #B98D5E; --kraft2: #A47A4C; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- 1 · Hero — red pen ---------- */
.rp-hero { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 90px); align-items: center;
  min-height: 92svh; padding: calc(var(--nav-h) + 40px) clamp(24px, 4.6vw, 88px) 60px; }
.rp-hero__copy { display: grid; gap: 22px; max-width: 560px; }
.rp-hero__title { margin: 0; font-family: var(--font-display); font-weight: 300; font-size: clamp(40px, 4.4vw, 76px); line-height: 1.03; letter-spacing: -0.04em; }
.rp-hero__lead { margin: 0; font-size: clamp(16px, 1.2vw, 19px); line-height: 1.6; color: var(--ink-soft); }
.rp-hero .btn { justify-self: start; }
.rp-proof { position: relative; aspect-ratio: 600 / 290; width: 100%; max-width: 640px; justify-self: center; }
.rp-note { position: absolute; left: 4%; right: 12%; top: 18%; padding: 18px 22px 20px; border-radius: 26px; background: rgba(255,255,255,0.9); box-shadow: 0 30px 70px rgba(26,29,33,0.14), 0 0 0 1px var(--hair);
  -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); font-size: clamp(14px, 1.25vw, 18px); }
.rp-note__top { display: flex; align-items: center; gap: 8px; font-size: 0.78em; color: var(--ink-soft); margin-bottom: 8px; }
.rp-note__top i { width: 22px; height: 22px; border-radius: 6px; background: url("img/favicon.svg") center/72% no-repeat, #0d1216; }
.rp-note__top b { color: var(--ink); letter-spacing: 0.04em; } .rp-note__top span { margin-left: auto; }
.rp-note__t { margin: 0 0 4px; font-weight: 600; font-size: 1.12em; } .rp-note__b { margin: 0; color: var(--ink-soft); }
.rp-wrong { display: inline-block; padding: 0 4px; }
.rp-pen { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.rp-pen path { fill: none; stroke: var(--pen); stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: var(--len, 400); stroke-dashoffset: var(--len, 400); }
.rp-proof.is-on .rp-pen path { animation: rpDraw var(--d, 700ms) cubic-bezier(.5,.1,.3,1) forwards; animation-delay: var(--dl, 0ms); }
@keyframes rpDraw { to { stroke-dashoffset: 0; } }
.rp-margin { position: absolute; margin: 0; color: var(--pen); font-family: "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive; font-size: clamp(16px, 1.6vw, 24px); line-height: 1.1; opacity: 0; transform: translateY(6px) rotate(-4deg); transition: opacity 500ms, transform 500ms var(--ease); }
.rp-margin b { display: block; font-size: 1.7em; font-family: inherit; }
.rp-margin--a { right: 0; top: -2%; text-align: center; } .rp-margin--b { left: 36%; top: 64%; transform: translateY(6px) rotate(3deg); }
.rp-proof.is-a .rp-margin--a, .rp-proof.is-b .rp-margin--b { opacity: 1; transform: translateY(0) rotate(-4deg); }
.rp-proof.is-b .rp-margin--b { transform: rotate(3deg); }
.rp-proof__fine { position: absolute; left: 4%; bottom: 0; margin: 0; font-size: 12px; color: var(--ink-soft); }

/* ---------- 2 · Not for emergencies ---------- */
.rp-sos { margin: 0 var(--inset); border-radius: var(--radius-xl); background: #15191c; color: #fff; padding: clamp(28px, 4vw, 48px) clamp(24px, 5vw, 80px); }
.rp-sos__in { display: grid; grid-template-columns: auto 1fr; gap: clamp(20px, 4vw, 56px); align-items: center; max-width: 1200px; margin: 0 auto; }
.rp-sos__k { font-family: var(--font-display); font-weight: 300; font-size: clamp(40px, 5vw, 80px); letter-spacing: -0.04em; color: #FF6B5E; white-space: nowrap; }
.rp-sos h2 { margin: 0 0 6px; font-size: clamp(19px, 1.6vw, 24px); font-weight: 600; } .rp-sos p { margin: 0; color: rgba(255,255,255,0.7); line-height: 1.55; }

/* ---------- 3 · Form ---------- */
.rp-form { padding: clamp(80px, 9vw, 130px) clamp(24px, 4.6vw, 88px) clamp(60px, 7vw, 100px); }
.rp-form__head { display: grid; gap: 14px; margin-bottom: clamp(28px, 3vw, 44px); }
.rp-form__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr); gap: clamp(28px, 4vw, 72px); align-items: start; }
.rp-f { display: grid; gap: 18px; }
.rp-f fieldset { border: 0; margin: 0; padding: 0; }
.rp-kinds { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rp-kind { position: relative; display: grid; grid-template-columns: 44px 1fr; grid-template-rows: auto auto; gap: 2px 14px; align-items: center; padding: 18px 20px; border-radius: 22px; background: var(--white); border: 1.5px solid var(--hair); cursor: pointer; transition: border-color 250ms, transform 250ms var(--ease), box-shadow 250ms; }
.rp-kind:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(26,29,33,0.08); }
.rp-kind input { position: absolute; opacity: 0; pointer-events: none; }
.rp-kind .k-ico { grid-row: span 2; width: 44px; height: 44px; border-radius: 14px; background: var(--paper-2); display: grid; place-items: center; transition: background 250ms; }
.rp-kind svg { width: 24px; height: 24px; fill: none; stroke: var(--ink); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; transition: stroke 250ms; }
.rp-kind b { font-size: 16px; } .rp-kind small { font-size: 13px; color: var(--ink-soft); line-height: 1.35; }
.rp-kind:has(input:checked) { border-color: var(--ink); box-shadow: 0 0 0 3px rgba(26,29,33,0.06); }
.rp-kind:has(input:checked) .k-ico { background: var(--ink); } .rp-kind:has(input:checked) svg { stroke: #fff; }
.rp-kind:has(input:focus-visible) { outline: 2px solid var(--pen); outline-offset: 3px; }
.rp-step { display: none; gap: 14px; padding: 22px; border-radius: 24px; background: var(--paper-2); animation: rpIn 450ms var(--ease) both; }
.rp-step.is-on { display: grid; }
@keyframes rpIn { from { opacity: 0; transform: translateY(10px); } }
.rp-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } .rp-row--3 { grid-template-columns: 1.2fr 1fr 0.8fr; }
.rp-f label { display: grid; gap: 6px; }
.rp-f label > span:first-child, .rp-f summary { font-family: var(--font-mono); font-size: 11.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-soft); }
.rp-f input:not([type=radio]):not([type=checkbox]):not([type=file]), .rp-f select, .rp-f textarea { font: inherit; font-size: 16px; padding: 12px 16px; border-radius: 14px; border: 1px solid rgba(26,29,33,0.14); background: var(--white); color: var(--ink); width: 100%; min-width: 0; }
.rp-f textarea { resize: vertical; line-height: 1.5; }
.rp-f input:focus, .rp-f select:focus, .rp-f textarea:focus { outline: 2px solid rgba(210,56,43,0.5); outline-offset: 1px; }
.rp-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: -4px; }
.rp-chips label { display: block; } .rp-chips input { position: absolute; opacity: 0; pointer-events: none; }
.rp-chips span { display: inline-block; padding: 9px 15px; border-radius: 99px; background: var(--white); border: 1px solid rgba(26,29,33,0.14); font-size: 14px; cursor: pointer; transition: background 200ms, color 200ms; }
.rp-chips input:checked + span { background: var(--pen); border-color: var(--pen); color: #fff; }
.rp-chips input:focus-visible + span { outline: 2px solid var(--pen); outline-offset: 2px; }
.rp-common { display: grid; gap: 16px; padding-top: 6px; }
.rp-dev { border-radius: 18px; border: 1px dashed rgba(26,29,33,0.2); padding: 14px 18px; }
.rp-dev summary { cursor: pointer; } .rp-dev[open] summary { margin-bottom: 12px; }
.rp-file input { font-size: 14px; } .rp-file small, .rp-check { font-size: 13px; color: var(--ink-soft); line-height: 1.45; }
.rp-f .rp-check { display: flex; gap: 10px; align-items: flex-start; } .rp-check input { margin-top: 3px; }
.rp-err { margin: 0; padding: 12px 16px; border-radius: 14px; background: #FBE7E4; color: #8E2318; font-size: 14px; }
.rp-send { justify-self: start; } .rp-send[disabled] { opacity: 0.5; pointer-events: none; }
.rp-alt { margin: 28px 0 0; font-size: 14px; color: var(--ink-soft); }

/* the tag */
.rp-tagwrap { position: sticky; top: calc(var(--nav-h) + 20px); display: grid; justify-items: center; gap: 22px; padding-top: 30px; }
.rp-stage { position: relative; width: 100%; display: grid; justify-items: center; padding-bottom: 150px; }
.rp-tag { position: relative; z-index: 2; width: min(330px, 100%); min-height: 380px; padding: 64px 26px 28px; color: #3a2f1b; font-family: var(--font-mono); font-size: 12.5px;
  background: repeating-linear-gradient(0deg, rgba(90,70,30,0.05) 0 1px, transparent 1px 3px), linear-gradient(170deg, var(--manila), var(--manila2));
  clip-path: polygon(22% 0, 78% 0, 100% 12%, 100% 100%, 0 100%, 0 12%); filter: drop-shadow(0 24px 40px rgba(60,40,10,0.18));
  transform: rotate(-2deg); transform-origin: 50% 0; transition: transform 800ms cubic-bezier(.2,1.2,.4,1); }
.rp-tag.is-swing { animation: rpSwing 900ms ease-out; }
@keyframes rpSwing { 0% { transform: rotate(-2deg); } 30% { transform: rotate(3deg); } 60% { transform: rotate(-3deg); } 100% { transform: rotate(-2deg); } }
.rp-tag__hole { position: absolute; left: 50%; top: 22px; width: 22px; height: 22px; margin-left: -11px; border-radius: 50%; background: var(--paper); box-shadow: inset 0 0 0 4px #c9b27c; }
.rp-tag__string { position: absolute; left: 50%; top: -60px; width: 2px; height: 94px; margin-left: -1px; background: linear-gradient(#b0a080, #8a7a5a); }
.rp-tag__k { margin: 0 0 6px; text-align: center; letter-spacing: 0.16em; font-size: 11px; }
.rp-tag__ref { margin: 0 0 16px; text-align: center; font-size: 18px; font-weight: 700; letter-spacing: 0.08em; }
.rp-tag__dl { margin: 0; display: grid; gap: 9px; }
.rp-tag__dl div { display: grid; grid-template-columns: 7.5em 1fr; gap: 8px; animation: rpType 380ms steps(10) both; overflow: hidden; }
.rp-tag__dl dt { text-transform: uppercase; letter-spacing: 0.08em; font-size: 10.5px; opacity: 0.65; } .rp-tag__dl dd { margin: 0; word-break: break-word; }
@keyframes rpType { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0 0 0 0); } }
.rp-tag__empty { margin: 30px 0 0; text-align: center; opacity: 0.55; font-family: var(--font-body); font-size: 14px; }
/* envelope: back panel behind the tag, front pocket + flap in front; the stage is clipped at the envelope's bottom edge so the tag can only exist inside it */
.rp-env { position: absolute; left: 50%; bottom: 0; width: min(380px, 100%); aspect-ratio: 1.6; transform: translate(-50%, 40px); opacity: 0; z-index: 1; pointer-events: none; transition: opacity 400ms, transform 600ms var(--ease); }
.rp-env i { position: absolute; inset: 0; border-radius: 12px; }
.rp-env--f { z-index: 3; }
.rp-env__back { background: linear-gradient(#8d6a40, var(--kraft2)); box-shadow: 0 30px 60px rgba(60,40,10,0.25); }
.rp-env__front { background: linear-gradient(160deg, var(--kraft), var(--kraft2)); clip-path: polygon(0 32%, 50% 66%, 100% 32%, 100% 100%, 0 100%); }
.rp-env__flap { z-index: 4; bottom: auto !important; height: 70%; background: linear-gradient(#cfa676, #c49a69); clip-path: polygon(0 0, 100% 0, 100% 46%, 50% 100%, 0 46%); transform-origin: 50% 0; transform: rotateX(180deg); opacity: 0; }
.rp-env__flap--open { opacity: 1; background: linear-gradient(#b8915f, #a9825a); }
.rp-tagwrap.is-sealed .rp-env__flap--open { opacity: 0; }
.rp-tagwrap.is-sealed .rp-env--f .rp-env__flap { opacity: 1; transition: transform 650ms var(--ease); }
.rp-env__ref { position: absolute; left: 9%; bottom: 14%; font-family: var(--font-mono); font-size: 15px; letter-spacing: 0.08em; color: #3a2a17; opacity: 0; transition: opacity 400ms 300ms; }
.rp-tagwrap.is-env .rp-env { opacity: 1; transform: translate(-50%, 0); }
.rp-tagwrap.is-in .rp-tag { transform: translateY(var(--ty, 60%)) scale(var(--ts, 0.6)); transition: transform 1000ms cubic-bezier(.55,0,.3,1); filter: none; }
.rp-tagwrap.is-in .rp-tag__string { opacity: 0; transition: opacity 200ms; }
.rp-tagwrap.is-sealed .rp-env--f .rp-env__flap { transform: rotateX(0deg); }
.rp-tagwrap.is-sealed .rp-env__ref { opacity: 0.85; }
.rp-tagwrap.is-sealed .rp-env__front::after { content: "受付"; position: absolute; right: 12%; bottom: 14%; color: var(--pen); font-weight: 700; border: 2px solid var(--pen); border-radius: 50%; width: 3.2em; height: 3.2em; display: grid; place-items: center; animation: rpStamp 380ms cubic-bezier(.2,.9,.3,1.3) both; }
@keyframes rpStamp { from { transform: scale(1.8) rotate(-30deg); opacity: 0; } to { transform: scale(1) rotate(-12deg); opacity: 1; } }
/* sent state */
.rp-f.is-sent .rp-kinds, .rp-f.is-sent .rp-step, .rp-f.is-sent .rp-dev, .rp-f.is-sent .rp-file, .rp-f.is-sent label:not(.rp-kind) { opacity: 0.45; filter: grayscale(1); pointer-events: none; transition: opacity 500ms, filter 500ms; }
.rp-f.is-sent .rp-send { display: none; }
.rp-sent { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 18px; background: #E6F4EC; color: #1E5B3A; animation: rpIn 450ms var(--ease) both; }
.rp-sent[hidden] { display: none; }
.rp-sent i { flex: none; width: 34px; height: 34px; border-radius: 50%; background: #2E8B57 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/60% no-repeat; }
.rp-sent b { display: block; font-size: 16px; } .rp-sent__ref { font-family: var(--font-mono); font-size: 13px; }
.rp-again { margin-left: auto; border: 1px solid rgba(30,91,58,0.35); background: #fff; color: #1E5B3A; font: inherit; font-size: 14px; font-weight: 600; padding: 9px 16px; border-radius: 99px; cursor: pointer; }
.rp-toast { position: fixed; z-index: 90; left: 50%; top: calc(var(--nav-h) + 18px); transform: translate(-50%, -20px); opacity: 0; display: flex; align-items: center; gap: 12px; padding: 12px 20px 12px 12px; border-radius: 99px;
  background: rgba(20,24,27,0.92); color: #fff; font-size: 15px; box-shadow: 0 20px 50px rgba(0,0,0,0.3); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); transition: transform 500ms cubic-bezier(.2,1.3,.4,1), opacity 300ms; pointer-events: none; }
.rp-toast.is-on { transform: translate(-50%, 0); opacity: 1; }
.rp-toast i { width: 28px; height: 28px; border-radius: 50%; background: #2E8B57 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/60% no-repeat; }
.rp-toast__ref { font-family: var(--font-mono); font-size: 13px; opacity: 0.75; }
.rp-done { margin: 0; max-width: 340px; text-align: center; font-size: 14px; line-height: 1.5; color: var(--ink-soft); }
.rp-done b { display: block; color: var(--ink); font-size: 18px; margin-bottom: 4px; }

/* ---------- 4 · Diff ---------- */
.rp-diff { margin: 0 var(--inset); border-radius: var(--radius-xl); background: #101316; color: #fff; padding: clamp(80px, 9vw, 140px) clamp(24px, 4.6vw, 88px);
  display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(32px, 5vw, 90px); align-items: center; }
.rp-diff .eyebrow { color: #FF8A7E; }
.rp-diff__copy { display: grid; gap: 20px; } .rp-diff__copy p { margin: 0; color: rgba(255,255,255,0.68); font-size: 17px; line-height: 1.6; }
.rp-diff__board { position: relative; border-radius: 26px; background: #070809; border: 1px solid rgba(255,255,255,0.07); padding: 22px 22px 18px; font-family: var(--font-mono); font-size: 12.5px; overflow: hidden; }
.rp-diff__cols, .rp-drow { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
.rp-diff__cols { padding-bottom: 12px; margin-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,0.08); }
.rp-diff__cols b { font-weight: 500; font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255,255,255,0.5); }
.rp-diff__rows { display: grid; gap: 6px; }
.rp-drow { position: relative; padding: 8px 0; }
.rp-drow span { padding: 7px 10px; border-radius: 9px; background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.55); line-height: 1.4; transition: background 400ms, color 400ms, box-shadow 400ms; }
.rp-drow span em { display: block; font-style: normal; font-size: 10.5px; opacity: 0.6; }
.rp-drow.is-ok span { color: rgba(255,255,255,0.9); background: rgba(111,194,180,0.12); }
.rp-drow.is-bad span { color: #fff; background: rgba(255,107,94,0.16); }
.rp-drow.is-bad span.is-odd { box-shadow: inset 0 0 0 1.5px #FF6B5E; }
.rp-drow i { position: absolute; left: 0; right: 0; top: 50%; height: 1px; background: linear-gradient(90deg, transparent, rgba(111,194,180,0.6), transparent); transform: scaleX(0); transition: transform 500ms var(--ease); z-index: -1; }
.rp-drow.is-ok i { transform: scaleX(1); }
.rp-diff__scan { position: absolute; left: 0; right: 0; height: 2px; top: var(--sy, 60px); background: linear-gradient(90deg, transparent, #FF8A7E, transparent); box-shadow: 0 0 14px #FF6B5E; opacity: var(--so, 0); transition: top 500ms var(--ease), opacity 300ms; }
.rp-diff__verdict { margin: 14px 0 0; min-height: 2.8em; font-family: var(--font-body); font-size: 14px; line-height: 1.45; color: #FFB3AA; }
.rp-diff__fine { margin: 4px 0 0; font-size: 10.5px; color: rgba(255,255,255,0.32); }

/* ---------- 5 · Keep ---------- */
.rp-keep { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 90px); align-items: center; padding: clamp(80px, 10vw, 150px) clamp(24px, 4.6vw, 88px); }
.rp-keep__copy { display: grid; gap: 20px; } .rp-keep__copy p { margin: 0; font-size: 17px; line-height: 1.6; color: var(--ink-soft); }
.rp-keep__sheet { background: var(--white); border-radius: 22px; padding: 28px 30px; box-shadow: 0 30px 70px rgba(26,29,33,0.1), 0 0 0 1px var(--hair); font-family: var(--font-mono); font-size: 13.5px; transform: rotate(1deg); }
.rp-keep__sheet p { margin: 0; display: grid; grid-template-columns: 9.5em 1fr auto; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px dashed rgba(26,29,33,0.12); }
.rp-keep__sheet .k-h { display: block; font-weight: 700; letter-spacing: 0.1em; padding-top: 0; }
.k-l { font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-soft); }
.k-x { position: relative; justify-self: start; }
.k-x::after { content: ""; position: absolute; left: -3px; right: -3px; top: -2px; bottom: -2px; background: #111; border-radius: 3px; transform-origin: 0 50%; transform: scaleX(var(--rx, 0)); transition: transform 600ms cubic-bezier(.7,0,.3,1); transition-delay: var(--rd, 0ms); }
.rp-keep__sheet em { font-style: normal; font-family: var(--font-body); font-size: 12px; color: var(--pen); white-space: nowrap; opacity: var(--re, 0); transition: opacity 400ms; transition-delay: calc(var(--rd, 0ms) + 500ms); }
.rp-keep__sheet.is-on { --rx: 1; --re: 1; }

/* ---------- 6 · Typed close ---------- */
.rp-type { margin: 0 var(--inset); border-radius: var(--radius-xl); min-height: 70vh; display: grid; place-items: center; padding: 80px 24px; background: #101316; color: #fff; }
.rp-type__line { margin: 0; text-align: center; font-family: var(--font-display); font-weight: 300; font-size: clamp(38px, 6vw, 104px); line-height: 1.05; letter-spacing: -0.045em; }
.rp-type__src { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.rp-type__caret { display: inline-block; width: 0.06em; height: 0.9em; margin-left: 0.06em; vertical-align: -0.08em; background: #FF6B5E; animation: rpBlink 1.05s steps(2) infinite; }
@keyframes rpBlink { 50% { opacity: 0; } }

/* ---------- Responsive ---------- */
@media (max-width: 1000px) {
  .rp-hero, .rp-form__grid, .rp-diff, .rp-keep { grid-template-columns: 1fr; }
  .rp-hero { min-height: 0; }
  .rp-tagwrap { position: relative; top: 0; order: -1; display: none; }
  .rp-tagwrap.is-env, .rp-tagwrap.is-show { display: grid; }
  .rp-sent { flex-wrap: wrap; } .rp-again { margin-left: 48px; }
  .rp-sos__in { grid-template-columns: 1fr; gap: 10px; }
}
@media (max-width: 600px) {
  .rp-kinds, .rp-row, .rp-row--3 { grid-template-columns: 1fr; }
  .rp-diff__board { font-size: 11px; padding: 16px 12px; } .rp-diff__cols, .rp-drow { gap: 6px; } .rp-drow span { padding: 6px 7px; }
  .rp-keep__sheet p { grid-template-columns: 1fr auto; } .rp-keep__sheet p .k-l { grid-column: 1 / -1; }
  .rp-margin { font-size: 15px; }
  .rp-proof { aspect-ratio: 600 / 520; } .rp-note { left: 0; right: 6%; top: 26%; }
}
html[lang="ja"] .rp-hero__title { font-size: clamp(34px, 3.8vw, 64px); line-height: 1.15; }
@media (prefers-reduced-motion: reduce) { .rp-type__caret { animation: none; } .rp-tag, .rp-tag.is-swing { animation: none; transition: none; } }
