/* The camp is a warm travel-journal spread; palette remains self-contained in both themes. */
.camp-view { --camp-paper:#fffaf5; --camp-soft:#f4e8e5; --camp-wash:#f9f0e9; --camp-ink:#513c43; --camp-muted:#806966; --camp-rose:#925c73; --camp-line:#dfc8c7; --camp-art:#fffdf8; background:linear-gradient(180deg,#f7ebe7,var(--paper,#fcf8f3) 680px); color:var(--camp-ink); padding-bottom:25px; }
.camp-view[data-camp-theme="night"] { --camp-paper:#302b3c; --camp-soft:#403347; --camp-wash:#292637; --camp-ink:#f4e4e1; --camp-muted:#c8b3b9; --camp-rose:#edbad0; --camp-line:#655061; --camp-art:#e4ddd8; background:radial-gradient(ellipse at 75% 0,#45344b 0,transparent 45%),#23212f; }
.camp-shell { width:min(1180px,calc(100% - 88px)); }
.camp-view button:focus-visible,.camp-view a:focus-visible,.camp-view [tabindex]:focus-visible { outline:2px solid var(--camp-rose); outline-offset:4px; }
.camp-view button { color:var(--camp-ink); }
.camp-view button:disabled { cursor:not-allowed; }
.camp-breadcrumb { display:flex;align-items:center;gap:14px;padding-top:27px;font-size:11px;color:var(--camp-muted); }
.camp-breadcrumb a { padding:9px 12px;border:1px solid var(--camp-line);border-radius:4px;background:var(--camp-paper); }
.camp-breadcrumb a:hover { color:var(--camp-rose); }
.camp-header { position:relative;isolation:isolate;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:40px 48px 38px;margin-top:25px;border:1px solid var(--camp-line);border-radius:9px;background:linear-gradient(120deg,var(--camp-paper),var(--camp-wash)); }
.camp-header::before { content:"";position:absolute;inset:7px;z-index:-1;border:1px solid var(--camp-line);opacity:.5;border-radius:5px; }
.camp-header .eyebrow { font-size:8px;color:var(--camp-muted);margin-bottom:18px;letter-spacing:2px; }
.camp-header h1 { font:54px/1.2 var(--serif);letter-spacing:0;color:var(--camp-rose);margin:0 0 16px; }
.camp-header h1 br { display:none; }
.camp-header h1 > span { display:block;font:20px/1.5 var(--serif);margin-top:12px;letter-spacing:1px;color:var(--camp-ink); }
.camp-header-copy > p:last-child { font-size:12px;line-height:1.8;color:var(--camp-muted);margin:0; }
.camp-header-stamp { flex-shrink:0;text-align:center;position:relative;z-index:1;min-width:235px; }
.camp-header-stamp > span { color:var(--camp-rose);font-size:23px; }.camp-header-stamp > p { font:25px/1.4 var(--serif);margin:7px 0 20px;letter-spacing:3px; }
.camp-summary { display:flex;justify-content:center;gap:20px;border-top:1px dashed var(--camp-line);padding-top:15px; }
.camp-summary > span { display:grid;gap:7px;font-size:9px;color:var(--camp-muted); }.camp-summary b { font:23px var(--serif);color:var(--camp-rose); }
.camp-header-flower { font-size:220px;line-height:1;position:absolute;right:180px;bottom:-88px;opacity:.07;color:var(--camp-rose);z-index:-1;transform:rotate(18deg); }
.camp-tabs { display:flex;gap:7px;border-bottom:1px solid var(--camp-line);margin-top:35px; }
.camp-tabs button { background:transparent;padding:15px 25px 17px;border-radius:5px 5px 0 0;border:1px solid transparent;border-bottom:3px solid transparent;font:23px/1.3 var(--serif); }
.camp-tabs button span { font:19px var(--serif);margin-right:5px; }.camp-tabs button[aria-selected="true"] { color:var(--camp-rose);border-bottom-color:var(--camp-rose);background:var(--camp-soft); }.camp-tabs button:hover { background:var(--camp-soft); }
.camp-panel { padding:36px 0 28px;outline-offset:8px; }.camp-rest-layout { display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:43px;align-items:start; }
.camp-portrait { isolation:isolate;position:relative;margin:8px 7px 14px 5px;padding:40px 22px 22px;border-radius:46% 46% 8px 8px;border:1px solid var(--camp-line);outline:1px solid var(--camp-line);outline-offset:6px;background:var(--camp-art);box-shadow:0 15px 35px #5934490c; }
.camp-portrait-scenery { position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(#fffdf8b0 25%,var(--camp-art)),url('../assets/profile-garden.webp?v=98b8e977d4') center / cover;opacity:.72; }
.camp-portrait-edition { display:block;text-align:center;font:7px var(--mono);letter-spacing:2px;color:#8e7278; }.camp-portrait > img { width:100%;height:360px;object-fit:contain;object-position:center;mix-blend-mode:multiply;margin:8px 0 0; }
.camp-portrait figcaption { text-align:center;padding-top:13px;position:relative; }.camp-portrait figcaption > span { display:block;font:38px var(--serif);color:#765164; }.camp-portrait figcaption small { display:block;font-size:10px;margin-top:5px;letter-spacing:1px;color:#806968; }
.camp-portrait-star { position:absolute;left:-19px;top:23%;color:var(--camp-rose);font-size:42px; }
.camp-time { display:flex;align-items:center;gap:13px;margin:0 0 22px;color:var(--camp-muted); }.camp-time > span { font-size:30px;color:var(--camp-rose); }.camp-time strong { font-size:10px;font-weight:500;letter-spacing:.3px; }.camp-time small { display:block;font:8px var(--mono);margin-top:8px;letter-spacing:1px; }
.camp-rest-copy h2 { font:31px/1.5 var(--serif);margin:0; }.camp-section-note { color:var(--camp-muted);font-size:10px;line-height:1.9;margin:10px 0 18px; }
.camp-companion-picker { display:flex;gap:10px;margin-bottom:27px; }.camp-companion-picker button { display:flex;align-items:center;gap:6px;padding:7px 13px 7px 5px;background:var(--camp-paper);border:1px solid var(--camp-line);border-radius:5px;min-height:56px; }
.camp-companion-picker button[aria-pressed="true"] { background:var(--camp-soft);border-color:var(--camp-rose);box-shadow:inset 0 -2px var(--camp-rose); }.camp-companion-picker img { width:39px;height:39px;object-fit:contain;background:#fff9f4;border-radius:50%; }.camp-companion-picker span { font:21px var(--serif); }
.camp-dialogue-box { border:1px solid var(--camp-line);border-radius:6px;background:var(--camp-paper);padding:22px 26px 18px;position:relative;box-shadow:4px 5px 0 color-mix(in srgb,var(--camp-line) 35%,transparent); }
.camp-dialogue-box::before { content:"";width:11px;height:11px;position:absolute;top:-7px;left:25px;transform:rotate(45deg);border-top:1px solid var(--camp-line);border-left:1px solid var(--camp-line);background:var(--camp-paper); }
.camp-dialogue-top { display:flex;align-items:center;justify-content:space-between;gap:12px; }.camp-dialogue-top strong { font:25px var(--serif);color:var(--camp-rose); }.camp-dialogue-top small { font-size:9px;color:var(--camp-muted); }
#camp-dialogue { min-height:90px;font:23px/1.75 var(--serif);margin:16px 0 20px; }.camp-talk-actions { display:flex;justify-content:space-between;gap:14px;border-top:1px dashed var(--camp-line);padding-top:12px; }
.camp-talk-actions button { background:transparent;color:var(--camp-rose);font-size:10px;min-height:37px;padding:7px 0; }.camp-talk-actions button:disabled { color:var(--camp-muted);opacity:.8; }.camp-talk-actions button span { font-size:17px;margin-left:7px; }
.camp-bond-caption { margin:17px 0 21px;color:var(--camp-muted);font-size:10px;text-align:right; }.camp-departure { border-top:1px solid var(--camp-line);padding-top:20px;display:flex;gap:20px;flex-wrap:wrap;align-items:center;justify-content:space-between; }.camp-kicker { display:block;font:8px/1.6 var(--mono);letter-spacing:1.5px;color:var(--camp-muted);margin:0 0 11px; }
.camp-departure p { font-size:11px;line-height:1.8;color:var(--camp-muted);margin:6px 0 0; }.camp-departure .button { padding:12px 17px;gap:14px;min-height:44px;background:var(--camp-rose);color:var(--camp-paper); }.camp-departure .button #camp-continue-label { font:12px var(--sans); }
.camp-section-heading { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px; }.camp-section-heading h2 { font:35px/1.4 var(--serif); }.camp-section-heading p:not(.camp-kicker) { font-size:11px;line-height:1.9;color:var(--camp-muted);margin:12px 0 0; }.camp-page-count { font:27px var(--serif);white-space:nowrap;color:var(--camp-rose);border:1px solid var(--camp-line);border-radius:50%;width:90px;height:90px;display:grid;place-items:center;flex-shrink:0; }.camp-heading-symbol { font:65px var(--serif);color:var(--camp-rose);padding-right:20px; }
.camp-bag-summary { font-size:10px;letter-spacing:1px;color:var(--camp-muted);border-bottom:1px dashed var(--camp-line);padding-bottom:18px;margin:0 0 22px; }
.camp-backpack-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start; }.camp-item-list { display:grid;grid-template-columns:1fr 1fr;gap:12px; }.camp-item-button { display:flex;align-items:center;gap:12px;min-width:0;min-height:97px;text-align:left;padding:14px;background:var(--camp-paper);border:1px solid var(--camp-line);border-radius:5px; }.camp-item-button[aria-pressed="true"] { border-color:var(--camp-rose);background:var(--camp-soft); }.camp-item-symbol { font-size:27px;flex-shrink:0;color:var(--camp-rose); }.camp-item-copy { display:grid;gap:8px; }.camp-item-copy small { font-size:8px;color:var(--camp-muted); }.camp-item-copy strong { font:20px/1.4 var(--serif); }.camp-item-arrow { font-size:13px;color:var(--camp-rose);margin-left:auto; }.camp-item-detail { padding:37px 32px;border:1px solid var(--camp-line);border-radius:6px;background:repeating-linear-gradient(0deg,transparent,transparent 32px,#ac86900d 32px,#ac86900d 33px),var(--camp-paper);min-height:355px;box-shadow:5px 6px 0 color-mix(in srgb,var(--camp-line) 35%,transparent); }.camp-detail-symbol { display:block;font-size:50px;color:var(--camp-rose);margin-bottom:20px; }.camp-item-detail h3 { font:32px/1.4 var(--serif);margin:0 0 20px; }.camp-item-detail > p:not(.camp-kicker) { font-size:12px;line-height:2.2;margin-bottom:20px;color:var(--camp-muted); }.camp-item-detail > small { display:block;font-size:9px;color:var(--camp-muted);border-top:1px dashed var(--camp-line);padding-top:15px; }.camp-detail-signature { display:block;text-align:right;font:18px var(--serif);color:var(--camp-rose);margin-top:30px; }
.camp-footnote { font-size:10px;color:var(--camp-muted);line-height:1.9;margin:27px 0 0; }.camp-ending-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }.camp-ending-card { position:relative;padding:24px;text-align:center;border:1px dashed var(--camp-line);border-radius:7px;background:var(--camp-wash); }.camp-ending-card.is-unlocked { border-style:solid;background:var(--camp-paper); }.camp-card-index { font:8px var(--mono);letter-spacing:2px;color:var(--camp-muted); }.camp-ending-seal { border:1px solid var(--camp-line);border-radius:50%;width:79px;height:79px;display:grid;place-items:center;color:var(--camp-rose);font-size:36px;margin:26px auto 21px; }.camp-ending-card h3 { font:28px/1.5 var(--serif);margin:0 0 12px; }.camp-ending-caption { color:var(--camp-muted);font-size:11px;line-height:1.9;min-height:62px;margin:0 0 22px; }.camp-small-button { min-height:42px;background:var(--camp-soft);border:1px solid var(--camp-line);border-radius:4px;padding:11px 18px;font-size:11px;color:var(--camp-rose)!important; }.camp-ending-hint { color:var(--camp-muted);font-size:11px;line-height:1.9;text-align:left;border-top:1px dashed var(--camp-line);padding-top:20px;margin:21px 0 0; }.camp-ending-reader { margin-top:28px;padding:28px 35px;border:1px solid var(--camp-line);border-radius:7px;background:var(--camp-paper); }.camp-reader-top { display:flex;justify-content:space-between;align-items:center;gap:12px; }.camp-reader-top .camp-kicker { margin:0; }.camp-reader-top button { background:transparent;padding:10px;font-size:11px;color:var(--camp-rose); }.camp-ending-reader h3 { font:35px/1.4 var(--serif);margin:15px 0 20px; }.camp-ending-reader p { font-size:12px;line-height:2.2;color:var(--camp-muted); }#camp-reader-moral { font:24px/1.6 var(--serif);color:var(--camp-rose);border-top:1px dashed var(--camp-line);padding-top:18px;margin-bottom:0; }
.camp-bond-picker { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:29px; }.camp-bond-picker > button { background:var(--camp-paper);border:1px solid var(--camp-line);border-radius:7px;padding:15px 19px 18px;display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;text-align:left;align-items:center; }.camp-bond-picker > button[aria-pressed="true"] { background:var(--camp-soft);border-color:var(--camp-rose);box-shadow:inset 0 -3px var(--camp-rose); }.camp-bond-picker img { width:76px;height:82px;object-fit:contain;border-radius:50%;background:#f8f0e9; }.camp-bond-picker strong { font:29px var(--serif);display:block;margin-bottom:7px; }.camp-bond-picker button > div > span { font-size:9px;color:var(--camp-muted); }.camp-bond-progress { grid-column:1/-1;display:flex;align-items:center;gap:12px; }.camp-bond-progress meter { width:100%;height:10px;appearance:none;border:0;background:var(--camp-wash);border-radius:4px; }.camp-bond-progress meter::-webkit-meter-bar { background:var(--camp-wash);border:0; }.camp-bond-progress meter::-webkit-meter-optimum-value { background:var(--camp-rose); }.camp-bond-progress meter::-moz-meter-bar { background:var(--camp-rose); }.camp-bond-progress small { font:10px var(--mono);white-space:nowrap;color:var(--camp-muted); }
.camp-bond-layout { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start; }.camp-experiences { padding:27px;border:1px solid var(--camp-line);border-radius:6px;background:var(--camp-paper); }.camp-experiences h3 { font:28px/1.5 var(--serif);margin:0 0 12px; }.camp-experiences p { font-size:10px;line-height:1.9;color:var(--camp-muted);margin:0 0 22px; }.camp-experiences ul { list-style:none;padding:0;margin:0;display:grid;gap:0; }.camp-experiences li { display:flex;gap:10px;align-items:center;font-size:11px;line-height:1.8;padding:15px 0;border-top:1px dashed var(--camp-line);color:var(--camp-muted); }.camp-experiences li > span:first-child { color:var(--camp-rose); }.camp-experiences li.is-known { color:var(--camp-ink); }.camp-experiences li small { margin-left:auto;white-space:nowrap;font-size:8px; }.camp-memory { padding:31px 30px;min-height:328px;background:var(--camp-wash);border:1px dashed var(--camp-line);border-radius:6px; }.camp-memory.is-unlocked { background:var(--camp-soft);border-style:solid; }.camp-memory-star { display:block;font-size:35px;color:var(--camp-rose);margin-bottom:22px; }.camp-memory h3 { font:29px/1.4 var(--serif);margin:0 0 20px; }.camp-memory > p:last-child { font-size:12px;line-height:2.1;color:var(--camp-muted);margin:0; }
.camp-footer { display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--camp-line);padding:23px 0;margin-top:12px;font-size:10px;color:var(--camp-muted); }.camp-footer p { margin:0;line-height:1.9; }.camp-footer p[data-warning="true"] { color:var(--camp-rose); }.camp-footer a { flex-shrink:0;min-height:40px;display:flex;align-items:center;gap:12px;color:var(--camp-rose); }.camp-noscript { padding:20px;border:1px solid var(--camp-line);line-height:1.8; }
@media (max-width:1000px) {
 .camp-shell { width:calc(100% - 64px); }.camp-header { padding:34px; }.camp-header h1 { font-size:45px; }.camp-header-stamp { min-width:210px; }.camp-rest-layout { gap:30px;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr); }.camp-portrait > img { height:325px; }.camp-rest-copy h2 { font-size:27px; }.camp-companion-picker { gap:7px; }.camp-companion-picker button { padding-right:10px; }.camp-companion-picker img { width:32px;height:36px; }.camp-dialogue-box { padding:19px 21px 16px; }#camp-dialogue { font-size:22px; }.camp-tabs button { padding-inline:22px; }.camp-backpack-layout { grid-template-columns:1fr .95fr;gap:21px; }.camp-item-list { grid-template-columns:1fr; }.camp-item-button { min-height:78px; }.camp-bond-picker { gap:14px; }.camp-bond-picker > button { grid-template-columns:60px minmax(0,1fr);padding:14px;gap:10px; }.camp-bond-picker img { width:60px;height:72px; }.camp-ending-list { gap:15px; }.camp-ending-card { padding:20px 17px; }.camp-ending-card h3 { font-size:24px; }.camp-experiences li { flex-wrap:wrap; }.camp-experiences li small { padding-left:22px; }
}
@media (max-width:760px) {
 .camp-shell { width:calc(100% - 42px); }.camp-header { padding:31px 29px;gap:15px; }.camp-header h1 { font-size:41px; }.camp-header h1 br { display:block; }.camp-header h1 > span { font-size:17px; }.camp-header-stamp { min-width:150px; }.camp-header-stamp > p { font-size:24px; }.camp-summary { gap:15px; }.camp-summary b { font-size:21px; }.camp-summary > span { font-size:8px; }.camp-header-copy > p:last-child { font-size:10px;max-width:215px; }.camp-header .eyebrow { font-size:6px;letter-spacing:1px; }.camp-tabs { gap:0; }.camp-tabs button { flex:1;padding:14px 10px;font-size:21px; }.camp-tabs button span { font-size:16px; }.camp-rest-layout { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:26px; }.camp-portrait { padding:33px 12px 20px;margin-top:13px; }.camp-portrait > img { height:265px; }.camp-portrait figcaption > span { font-size:32px; }.camp-portrait figcaption small { font-size:8px;line-height:1.7; }.camp-portrait-edition { font-size:5px;letter-spacing:1px; }.camp-portrait-star { font-size:31px;left:-16px; }.camp-time { gap:8px; }.camp-time strong { font-size:9px; }.camp-rest-copy h2 { font-size:23px; }.camp-section-note { font-size:9px; }.camp-companion-picker { flex-wrap:wrap;gap:6px; }.camp-companion-picker button { padding:5px 8px 5px 4px;gap:3px;min-height:47px; }.camp-companion-picker img { width:27px;height:32px; }.camp-companion-picker span { font-size:18px; }.camp-dialogue-box { padding:18px 18px 12px; }.camp-dialogue-top { gap:6px; }.camp-dialogue-top small { font-size:7px; }.camp-dialogue-top strong { font-size:22px; }#camp-dialogue { font-size:21px; }.camp-talk-actions { flex-wrap:wrap;gap:0; }.camp-talk-actions button { font-size:9px; }.camp-departure { gap:13px; }.camp-section-heading h2 { font-size:30px; }.camp-page-count { height:73px;width:73px;font-size:24px; }.camp-section-heading p:not(.camp-kicker) { font-size:10px; }.camp-item-detail { padding:28px 24px; }.camp-item-detail h3 { font-size:27px; }.camp-detail-signature { font-size:16px; }.camp-ending-list { gap:12px; }.camp-ending-card { padding:20px 12px; }.camp-ending-card h3 { font-size:23px; }.camp-ending-caption { font-size:10px;min-height:77px; }.camp-small-button { padding-inline:11px;font-size:10px; }.camp-bond-picker > button { display:block;text-align:center;padding:14px 13px; }.camp-bond-picker img { width:90px;height:97px;margin:0 auto 12px; }.camp-bond-picker strong { font-size:28px; }.camp-bond-progress { margin-top:16px; }.camp-bond-layout { gap:20px; }.camp-experiences { padding:22px; }.camp-experiences h3 { font-size:25px; }.camp-memory { padding:25px 22px; }.camp-memory h3 { font-size:25px; }
}
@media (max-width:560px) {
 .camp-shell { width:calc(100% - 36px); }.camp-breadcrumb { font-size:9px;gap:9px;padding-top:20px; }.camp-breadcrumb a { padding:8px 9px; }.camp-header { padding:28px 24px;margin-top:20px;align-items:flex-start; }.camp-header h1 { font-size:41px;line-height:1.23; }.camp-header h1 > span { font-size:15px;letter-spacing:0;margin-top:16px; }.camp-header-stamp { min-width:0;width:91px;padding-top:25px; }.camp-header-stamp > span { font-size:20px; }.camp-header-stamp > p { font-size:19px;letter-spacing:1px;margin:8px 0 14px; }.camp-summary { gap:11px;padding-top:12px;flex-wrap:wrap; }.camp-summary > span { font-size:7px;gap:5px; }.camp-summary b { font-size:18px; }.camp-summary > span:last-child { display:none; }.camp-header .eyebrow { font-size:5px;letter-spacing:.8px;white-space:nowrap; }.camp-header-copy > p:last-child { font-size:9px;max-width:184px;line-height:1.9; }.camp-header h1 { margin-bottom:14px; }.camp-tabs { margin-top:27px; }.camp-tabs button { padding:13px 3px 14px;font-size:19px; }.camp-tabs button span { display:none; }.camp-panel { padding-top:27px; }.camp-rest-layout { display:flex;flex-direction:column;gap:31px; }.camp-portrait { width:calc(100% - 28px);max-width:350px;margin:10px auto 0;padding:29px 25px 22px; }.camp-portrait > img { height:290px; }.camp-portrait figcaption > span { font-size:32px; }.camp-portrait figcaption small { font-size:9px; }.camp-portrait-edition { font-size:6px;letter-spacing:1.5px; }.camp-portrait-star { font-size:38px;left:-20px; }.camp-rest-copy { width:100%; }.camp-time { margin-bottom:16px;gap:13px; }.camp-time strong { font-size:10px; }.camp-time small { font-size:8px; }.camp-rest-copy h2 { font-size:30px; }.camp-section-note { font-size:10px; }.camp-companion-picker { gap:9px;margin-bottom:24px; }.camp-companion-picker button { flex:1;justify-content:center;padding:8px 9px 8px 4px;gap:5px; }.camp-companion-picker img { width:34px;height:37px; }.camp-companion-picker span { font-size:22px; }.camp-dialogue-box { padding:22px 21px 13px; }.camp-dialogue-top strong { font-size:25px; }.camp-dialogue-top small { font-size:8px; }#camp-dialogue { font-size:24px;min-height:90px; }.camp-talk-actions { flex-wrap:nowrap;gap:10px; }.camp-talk-actions button { font-size:10px; }.camp-bond-caption { margin:17px 0 23px; }.camp-departure { padding-top:23px; }.camp-departure .button { min-height:46px; }.camp-section-heading { gap:15px;margin-bottom:23px; }.camp-section-heading h2 { font-size:28px; }.camp-section-heading .camp-kicker { font-size:6px;letter-spacing:1px; }.camp-section-heading p:not(.camp-kicker) { font-size:10px; }.camp-page-count { width:58px;height:58px;font-size:19px; }.camp-heading-symbol { font-size:46px;padding-right:0; }.camp-backpack-layout { grid-template-columns:1fr;gap:24px; }.camp-item-list { grid-template-columns:1fr 1fr;gap:10px; }.camp-item-button { gap:8px;padding:13px 11px;min-height:93px; }.camp-item-symbol { font-size:24px; }.camp-item-copy strong { font-size:19px; }.camp-item-arrow { display:none; }.camp-item-detail { padding:29px 26px;min-height:0; }.camp-item-detail h3 { font-size:31px; }.camp-item-detail > p:not(.camp-kicker) { font-size:12px; }.camp-detail-symbol { font-size:44px; }.camp-footnote { font-size:9px; }.camp-ending-list { grid-template-columns:1fr;gap:18px; }.camp-ending-card { padding:24px 25px; }.camp-ending-seal { margin:18px auto 19px; }.camp-ending-card h3 { font-size:29px; }.camp-ending-caption { font-size:11px;min-height:0;margin-bottom:20px; }.camp-ending-hint { font-size:11px; }.camp-small-button { font-size:11px;min-height:44px;padding-inline:21px; }.camp-ending-reader { padding:24px 23px; }.camp-ending-reader h3 { font-size:32px; }.camp-reader-top .camp-kicker { font-size:6px;letter-spacing:1px; }#camp-reader-moral { font-size:23px; }.camp-bond-picker { gap:9px; }.camp-bond-picker > button { padding:12px 7px 14px; }.camp-bond-picker img { width:82px;height:85px;margin-bottom:12px; }.camp-bond-picker strong { font-size:25px; }.camp-bond-picker button > div > span { font-size:8px; }.camp-bond-progress { display:grid;gap:7px;justify-items:center; }.camp-bond-progress small { font-size:9px; }.camp-bond-layout { grid-template-columns:1fr;gap:20px; }.camp-experiences { padding:24px 23px; }.camp-experiences h3 { font-size:28px; }.camp-experiences li { flex-wrap:nowrap;font-size:10px;gap:8px; }.camp-experiences li small { padding-left:0;font-size:7px; }.camp-memory { min-height:0;padding:27px 24px; }.camp-memory h3 { font-size:29px; }.camp-memory > p:last-child { font-size:12px; }.camp-footer { flex-direction:column;align-items:flex-start;gap:13px;font-size:9px;padding-block:22px; }.camp-footer a { font-size:10px; }
}
@media (max-width:360px) {
 .camp-shell { width:calc(100% - 28px); }.camp-header { padding:25px 20px;gap:8px; }.camp-header h1 { font-size:37px; }.camp-header h1 > span { font-size:13px; }.camp-header-stamp { width:70px; }.camp-header-stamp > p { font-size:17px; }.camp-header .eyebrow { font-size:4px;letter-spacing:.6px; }.camp-summary { gap:9px; }.camp-tabs button { font-size:18px; }.camp-rest-copy h2 { font-size:27px; }.camp-companion-picker { gap:6px; }.camp-companion-picker button { padding-inline:5px;gap:3px; }.camp-companion-picker img { width:28px; }.camp-companion-picker span { font-size:20px; }.camp-dialogue-top small { font-size:7px; }.camp-talk-actions button { font-size:9px; }.camp-section-heading h2 { font-size:25px; }.camp-page-count { width:49px;height:49px;font-size:17px; }.camp-item-list { grid-template-columns:1fr; }.camp-item-button { min-height:78px; }.camp-item-copy strong { font-size:21px; }.camp-bond-picker img { width:70px;height:77px; }.camp-experiences { padding:22px 18px; }.camp-experiences li { flex-wrap:wrap; }.camp-experiences li small { margin-left:21px; }
}
@media (prefers-reduced-motion:reduce) { .camp-view * { scroll-behavior:auto!important;transition:none!important; } }
@media (forced-colors:active) { .camp-tabs button[aria-selected="true"],.camp-companion-picker button[aria-pressed="true"],.camp-bond-picker button[aria-pressed="true"],.camp-item-button[aria-pressed="true"] { outline:2px solid Highlight; }.camp-portrait > img { mix-blend-mode:normal; }.camp-portrait-scenery { display:none; } }
.camp-response-options { display:grid;gap:8px;margin-top:18px; }.camp-response-button { text-align:left;min-height:42px;padding:10px 13px;border:1px solid #d5b6c2;border-radius:5px;background:#fff8f0;color:#956b80;font:14px/1.7 var(--serif); }.camp-response-button:hover { background:#f4e4e9; }.camp-conversation-note { font-size:8px!important;line-height:1.8!important;color:#ac9287!important;margin:10px 0 0!important; }.camp-side-memory { border-top:1px dashed #d6b6c2;padding-top:18px;margin-top:20px; }.camp-side-memory small { color:#aa8391;font-size:8px;letter-spacing:1px; }.camp-side-memory h4 { font:23px var(--serif);color:#8c5e77;margin:10px 0; }.camp-side-memory p { font-size:12px;line-height:2; }
[data-camp-theme="night"] .camp-response-button { background:#303849;color:#e3c5d5;border-color:#746176; }[data-camp-theme="night"] .camp-response-button:hover { background:#454458; }
.camp-response-button { min-height:44px; }

