/* SuguWa: navy and water blue, with restrained pink and yellow accents. */
:root{--ink:#173b5c;--muted:#66798a;--paper:#faf8f3;--teal:#16759c;--line:#dce3e8;--yellow:#f6d978;--pink:#ca4879}
.suguwa-logo{width:54px;height:54px;object-fit:contain;border-radius:12px;background:white;flex-shrink:0}
.brand-name{letter-spacing:-.8px;font-size:25px}.brand-en{color:var(--muted)}
.eyebrow{color:var(--teal)}.eyebrow i{background:var(--pink)}
.whistle-section{background:#eaf1f6}.whistle-card{background:#fafcfd;border-color:var(--line)}
.guide-lead,.toc-toggle{background:#eaf1f6}.toc-link:hover{background:#eaf1f6}
.book-jump{background:#edf3f7}.editor-note{background:#fbf3dc;border-left-color:#e3c35f}
.filters button.active{background:var(--ink);border-color:var(--ink)}
.quick-check{background:#f9e8ae}.sticker{background:#f9e8ae}
.source-download,.book-search input{background:#fffefa}.guide-points li,.source-block{border-color:var(--line)}
.whistle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.whistle-card{min-width:0;overflow-wrap:anywhere}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-color:var(--pink)}
footer{display:flex;flex-wrap:wrap;gap:12px 25px}
footer>p{margin:auto}footer .copyright{flex-basis:100%;text-align:right;color:#8793a0;font-size:10px;letter-spacing:.15px;line-height:1.7;padding-top:4px}
@media(max-width:760px){.whistle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.suguwa-logo{width:42px;height:42px}.brand-name{font-size:21px}header .brand{gap:8px}footer>a:last-of-type{margin-left:auto}footer .copyright{display:block;font-size:9px}}

.field-guide{padding:40px 48px;background:#edf4f7}.field-guide>a{display:block}.field-guide img{display:block;width:100%;height:auto;border-radius:16px}.field-zones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}.field-zones h3{font-size:16px}.field-zones p{font-size:13px;color:var(--muted)}.field-comparison{display:flex;flex-wrap:wrap;gap:15px;padding:18px 20px;margin-top:22px;background:#fff9e7;border-radius:10px;font-size:13px}.field-guide .small-note a{text-decoration:underline}@media(max-width:760px){.field-guide{padding:30px 20px}.field-zones{grid-template-columns:1fr;gap:8px}}

header .brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px}header .updated-date{font-size:9px;font-weight:400;letter-spacing:0;color:#65756e;line-height:1.3;white-space:nowrap}
