/* 指さし・呼称プリント。操作は「かんたん／むずかしい」と入れかえだけ。 */
.pp-app{max-width:980px;margin:0 auto;padding:28px 20px 48px}
.pp-app [hidden]{display:none!important}
.pp-heading h1{font-family:"Zen Maru Gothic",sans-serif;font-size:26px;margin:0 0 6px}
.pp-heading p{margin:0;color:var(--site-muted);font-size:14px}
.pp-controls{position:sticky;top:8px;z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:20px 0;padding:10px 12px 10px 16px;background:#fff;border:1px solid var(--site-border);border-radius:18px;box-shadow:0 6px 18px rgba(60,48,30,.08)}
.pp-levels{display:flex;padding:3px;gap:3px;background:var(--site-surface);border-radius:999px}
.pp-levels button{min-height:40px;padding:0 18px;border:0;border-radius:999px;background:transparent;font:inherit;font-size:15px;color:var(--site-ink);cursor:pointer}
.pp-levels button[aria-pressed="true"]{background:#fff;color:#1C3A2B;font-weight:700;box-shadow:0 1px 4px rgba(60,48,30,.12)}
.pp-levels small{display:block;font-size:11px;font-weight:500;color:var(--site-muted);line-height:1}
.pp-secondary{min-height:40px;padding:0 14px;border:1px solid var(--site-border);border-radius:999px;background:#fff;font:inherit;font-size:14px;color:var(--site-ink);cursor:pointer}
#pp-count{color:var(--site-muted);font-size:13px}
#pp-print{margin-left:auto}
#pp-print:disabled,#pp-reshuffle:disabled{opacity:.45;cursor:default}
#pp-message{color:#8A3B1B;font-size:14px;min-height:0;margin:0 0 10px}
.pp-empty{padding:28px;border:1px dashed var(--site-border);border-radius:18px;background:#fff;text-align:center}
.pp-empty p{margin:0 0 14px}
.pp-empty .pp-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.pp-empty a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:999px;background:var(--site-green);color:#fff;text-decoration:none;font-weight:700}
#pp-sheets{display:grid;gap:28px}
.pp-page-tools{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px}
.pp-page-tools button{min-height:34px;padding:0 12px;border:1px solid var(--site-border);border-radius:999px;background:#fff;font:inherit;font-size:13px;cursor:pointer}

/* 紙面：A4縦に2問（上下それぞれA5横）。幅に合わせて全体を拡大縮小（cqw） */
.pp-page-tools{flex-wrap:wrap;gap:6px 16px}
.pp-tool{display:flex;align-items:center;gap:6px}
.pp-tool span{font-weight:700;margin-right:4px}
.pp-sheet{position:relative;container-type:inline-size;width:100%;max-width:560px;margin:0 auto;aspect-ratio:210/297;box-sizing:border-box;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));background:#fff;border:1px solid var(--site-border);box-shadow:0 8px 24px rgba(60,48,30,.1)}
.pp-half{display:flex;flex-direction:column;min-height:0;overflow:hidden;box-sizing:border-box;padding:5cqw 7cqw 4cqw}
.pp-half-flipped{grid-row:2;transform:rotate(180deg)}
.pp-cue{margin:0;font-family:"Zen Kaku Gothic New",sans-serif;font-size:2.2cqw;color:#8a8478}
.pp-cue strong{font-weight:700;color:#5d584f}
.pp-grid{flex:1;display:grid;gap:3.5cqw;padding-top:3cqw;min-height:0}
.pp-half[data-count="2"] .pp-grid{grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr)}
.pp-half[data-count="4"] .pp-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr))}
.pp-card{display:grid;place-items:center;min-height:0;border:.45cqw solid #d9d2c3;border-radius:4cqw;overflow:hidden}
.pp-card{position:relative}
.pp-card img{position:absolute;inset:6%;width:88%;height:88%;object-fit:contain}
.pp-fold{position:absolute;left:0;right:0;top:50%;border-top:.3cqw dashed #c9c1b1;pointer-events:none}
.pp-fold span{position:absolute;right:2cqw;top:-1.2cqw;transform:translateY(-100%);font-size:1.8cqw;color:#b2ab9d;background:#fff;padding:0 1cqw}

/* ことばのきろく（えらんだ子がいるときだけ。印刷しない） */
.pp-words{max-width:560px;margin:12px auto 0;padding:12px 14px;background:#fff;border:1px solid var(--site-border);border-radius:16px}
.pp-words-title{margin:0 0 8px;font-size:13px;color:var(--site-muted)}
.pp-word{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 0;border-top:1px solid #eee7da}
.pp-word:first-of-type{border-top:0}
.pp-word-name{min-width:5em;font-weight:700}
.pp-word-states,.pp-word-helps{display:flex;flex-wrap:wrap;gap:6px}
.pp-word-helps{flex-basis:100%;padding-left:calc(5em + 56px)}
.pp-word-helps[hidden]{display:none}
.pp-words button{min-height:36px;padding:0 12px;border:1px solid var(--site-border);border-radius:999px;background:#fff;font:inherit;font-size:13px;color:var(--site-ink);cursor:pointer}
.pp-word-states button[aria-pressed="true"]{font-weight:700;color:#fff;border-color:transparent}
.pp-word-states .pp-word-done[aria-pressed="true"]{background:#2E9D5B}
.pp-word-states .pp-word-support[aria-pressed="true"]{background:#C98A1B}
.pp-word-states .pp-word-notyet[aria-pressed="true"]{background:#8A8478}
.pp-word-helps button{min-height:32px;font-size:12px}
.pp-words .pp-word-like{width:36px;padding:0;font-size:18px;line-height:1;color:#C0567A}
.pp-words .pp-word-like[aria-pressed="true"]{background:#FCE8EF;border-color:#E6A3BA}
.pp-word-helps button[aria-pressed="true"]{background:#FFF3DC;border-color:#C98A1B;font-weight:700}

@media(max-width:600px){
  .pp-app{padding:18px 12px 32px}
  .pp-heading h1{font-size:21px}
  .pp-controls{gap:8px;padding:8px}
  .pp-levels button{padding:0 14px}
  #pp-print{width:100%;margin-left:0}
  .pp-word-helps{padding-left:0}
}

@page{size:A4 portrait;margin:0}
@media print{
  html,body{margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .site-header,.site-footer,.notice,.pp-heading,.pp-controls,#pp-message,.pp-empty,.pp-page-tools,.pp-words,noscript{display:none!important}
  .pp-app{max-width:none;padding:0;margin:0}
  #pp-sheets{display:block}
  .pp-page{break-after:page;page-break-after:always}
  .pp-page:last-child{break-after:auto;page-break-after:auto}
  .pp-sheet{width:210mm;max-width:none;height:297mm;aspect-ratio:auto;border:0;box-shadow:none;margin:0}
}
