.landing-current-top-ten-link.my-note-entry { gap:6px; margin:0 auto 18px; color:#414d49; }
.landing-current-top-ten-link.my-note-entry:hover,.landing-current-top-ten-link.my-note-entry:focus-visible { color:#26332e; }
.my-note-post-game-link { display:block; margin:14px auto; padding:8px 12px; background:transparent; color:#207a73; text-decoration:underline; text-underline-offset:4px; }
.my-note-modal { z-index:120; }
.my-note-sheet { width:min(780px,100%); height:calc(100dvh - 32px); max-height:calc(100dvh - 32px); overflow:auto; padding:0; border:1px solid #bdc8bf; border-radius:18px; background:#fff; color:#222; text-align:left; box-shadow:0 14px 60px #172b2729; }
.my-note-header { position:sticky; top:0; z-index:1; padding:20px 26px 0; background:#fff; border-bottom:1px solid #bdc8bf; }
.my-note-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.my-note-tabs { display:flex; gap:8px; margin-top:16px; overflow-x:auto; }
.my-note-tabs button { flex:1 0 auto; min-height:44px; padding:10px 12px 12px; border-radius:0; border-bottom:3px solid transparent; }
.my-note-tabs button[aria-selected="true"] { border-bottom-color:#207a73; color:#174f49; }
.my-note-tabs button:hover { background:#f6f7f5; }
.note-saved-overview { padding-top:20px; }
.note-saved-overview > h3 { margin:0 0 16px; font-size:17px; }
.my-note-header p { margin:0 0 4px; font-size:10px; color:#688177; letter-spacing:.2em; }
.my-note-header h2 { margin:0; font-size:25px; font-weight:700; }
.my-note-header button { flex-shrink:0; min-width:44px; background:transparent; color:#53685d; font-size:12px; font-weight:800; }
.my-note-header .my-note-tabs button { font-size:14px; }
.my-note-header button.my-note-initial-focus:focus { outline:none; box-shadow:none; }
.my-note-intro { display:flex; align-items:center; gap:14px; padding:24px 28px 6px; }
.my-note-intro img { object-fit:contain; width:64px; height:64px; }
.my-note-intro p { margin:0; font-size:14px; line-height:1.9; font-weight:700; }
#myNoteContent { padding:0 28px 28px; isolation:isolate; }
.note-first-day { display:flex; flex-wrap:wrap; gap:6px 12px; margin:12px 0 26px; color:#646464; font-size:13px; line-height:1.8; }
.note-first-day time { color:#222; font-weight:650; white-space:nowrap; }
.note-section { padding:24px 0; border-top:1px solid #bdc8bf; }
.note-section h3 { margin:0 0 17px; font-size:17px; font-weight:700; }
.note-section h3 small { font-size:12px; margin-left:8px; font-weight:500; color:#646464; }
.note-bests { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.note-best { min-width:0; padding:18px; border:1px solid #bdc8bf; border-radius:10px; background:#fff; }
.note-best > span { font-size:13px; color:#646464; font-weight:700; }
.note-best > strong { display:block; margin:12px 0; font-size:30px; font-family:var(--font-score); font-weight:700; }
.note-best small,.note-stat small { margin-left:6px; font-size:12px; font-weight:500; }
.note-best p { margin:0; color:#222; font-size:12px; line-height:1.7; }
.note-score > strong,.note-longest > strong { font-size:32px; }
.note-longest { grid-column:1/-1; }
.note-longest > strong { line-height:1.6; overflow-wrap:anywhere; font-weight:800; }
.note-best .note-unset { font-size:19px; color:#949d92; font-weight:500; }
.note-word-count { display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin-top:18px; }
.note-word-count > strong { margin:0; font-size:30px; }
.note-word-count p { margin-left:auto; color:#646464; }
.note-caption { margin:12px 0 0; color:#646464; font-size:12px; line-height:1.8; }
.note-totals { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.note-stat > span { display:block; font-size:13px; color:#646464; }
.note-stat strong { display:block; margin:10px 0; font-family:var(--font-score); font-size:25px; }
.note-stat p { margin:0; color:#646464; font-size:12px; line-height:1.7; }
.note-streak { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; margin-top:22px; padding:13px 16px; background:#f1f4f1; border:1px solid #c6d0c8; border-radius:8px; color:#646464; font-size:13px; }
.note-streak strong { margin-left:7px; color:#222; }
.note-kana-list { list-style:none; display:grid; grid-template-columns:1fr 1fr; grid-auto-flow:row; gap:10px 28px; margin:18px 0 0; padding:0; }
.note-kana-list li { display:flex; align-items:center; gap:12px; min-height:40px; font-size:12px; }
.note-kana-list li > strong { display:grid; place-items:center; width:34px; height:36px; flex-shrink:0; border-radius:5px; border:1px solid #bdc8bf; background:#fff; font-size:21px; color:#222; }
.note-kana-rank { width:16px; color:#646464; font-size:12px; }
.note-kana-bar { flex:1; min-width:15px; height:6px; background:#eaece4; border-radius:9px; }
.note-kana-bar i { display:block; height:100%; border-radius:9px; background:#719d82; }
.note-kana-list li > span:last-child { min-width:43px; text-align:right; }
.note-kana-list small { margin-left:4px; font-size:11px; color:#646464; }
.note-history { padding:0; margin:0; list-style:none; }
.note-history li { display:grid; grid-template-columns:95px 1fr; gap:12px; padding:14px 0; border-bottom:1px solid #c6d0c8; }
.note-history time { color:#222; font-size:12px; line-height:1.8; }
.note-history p { margin:0 0 4px; font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
.note-placeholder,.note-empty { color:#647a6d; font-size:13px; line-height:1.9; padding:16px 0; }
.note-empty { margin:16px 0 24px; padding:18px; background:#eff4ea; border-radius:10px; }
.note-empty strong { font-size:14px; }
.note-empty p { margin:8px 0 0; }
.note-footnote { font-size:11px; line-height:1.9; color:#646464; }
.my-note-celebration { position:relative; display:flex; align-items:center; gap:10px; width:100%; margin:16px 0 0; padding:10px 14px; border-radius:12px; background:#f0f6ee; text-align:left; }
.result-card .my-note-celebration .my-note-confetti { inset:0; height:100%; }
.result-card .my-note-celebration .my-note-confetti i { top:auto; bottom:4px; animation:result-confetti-cracker 1050ms cubic-bezier(0.18,0.72,0.3,1) var(--confetti-delay) both; }
.my-note-celebration img { flex-shrink:0; width:88px; height:76px; object-fit:contain; }
.my-note-celebration > div { min-width:0; }
.my-note-celebration strong { font-size:13px; line-height:1.7; overflow-wrap:anywhere; }
.my-note-celebration button { display:block; min-height:30px; padding:3px 0; background:transparent; color:#587265; font-size:11px; font-weight:500; text-align:left; }
.my-note-update-link { display:block; max-width:100%; min-height:44px; margin:12px auto 0; padding:8px; background:transparent; color:#24584e; font-size:13px; line-height:1.7; text-decoration:underline; text-underline-offset:4px; }
.result-note-save-actions { display:flex; flex-wrap:wrap; gap:10px; }
.result-note-save-actions button { min-height:44px; }
.note-saved-list { list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.note-saved-item { position:relative; display:grid; grid-template-columns:1fr auto; gap:8px 12px; width:100%; padding:16px 38px 16px 16px; border:1px solid #bdc8bf; border-radius:10px; background:#fff; color:#222; text-align:left; }
.note-saved-item:hover { background:#faf9f5; }
.note-saved-item time { color:#646464; font-size:12px; align-self:center; }
.note-saved-item strong { font-size:22px; font-family:var(--font-score); }
.note-saved-item small,.note-saved-score small { margin-left:5px; font-size:12px; }
.note-saved-item > span:not(.note-saved-arrow) { grid-column:1/-1; font-size:16px; font-weight:700; line-height:1.7; overflow-wrap:anywhere; }
.note-saved-arrow { position:absolute; right:15px; top:50%; transform:translateY(-50%); font-size:24px; color:#53685d; }
.note-saved-more,.note-saved-back { margin:16px 0; min-height:44px; }
.my-note-sheet .secondary-button { width:auto; background:#fff; color:#53685d; border:1px solid #bdc8bf; font-size:14px; }
.my-note-sheet .note-saved-back { padding:8px 0; border:0; background:transparent; }
.note-saved-detail { overflow-wrap:anywhere; }
.note-saved-detail h3 { font-size:22px; margin:12px 0; }
.note-saved-detail h4 { font-size:15px; margin:16px 0; }
.note-saved-detail time { font-size:13px; color:#646464; }
.note-saved-score { margin:18px 0; font-size:38px; font-weight:800; font-family:var(--font-score); }
.note-saved-facts { display:flex; flex-wrap:wrap; gap:12px 24px; margin:16px 0 24px; }
.note-saved-facts dt { font-size:12px; color:#646464; }
.note-saved-facts dd { margin:6px 0 0; font-size:16px; font-weight:700; }
.note-saved-detail .result-board { margin:16px 0 24px; }
.note-saved-detail .result-best-word { overflow-wrap:anywhere; }
.note-saved-remove { margin:20px 0 6px; min-height:44px; }
.note-saved-confirm { padding:16px; margin:20px 0; border:1px solid #bdc8bf; border-radius:10px; }
.note-saved-confirm p { font-size:13px; line-height:1.8; }
.note-saved-confirm button { margin:0 8px 8px 0; min-height:44px; }
.note-saved-ranking { list-style:none; padding:0; }
.note-saved-ranking li { display:grid; grid-template-columns:auto 1fr auto; gap:12px; padding:10px; font-size:13px; }
.note-saved-self { background:#faf3cd; border-radius:6px; }
@media (max-width:400px) {
  .note-saved-item { grid-template-columns:1fr; }
  .note-saved-item strong { font-size:24px; }
}
@media (max-width:580px) {
  .my-note-modal { padding:8px; }
  .my-note-sheet { height:calc(100dvh - 16px); max-height:calc(100dvh - 16px); border-radius:14px; }
  .my-note-header { padding:16px 18px 0; }
  .my-note-header h2 { font-size:22px; }
  .my-note-intro { padding:18px 18px 4px; gap:10px; }
  .my-note-intro p { font-size:12px; }
  #myNoteContent { padding:0 18px 24px; }
  .note-bests { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .note-score { grid-column:1/-1; }
  .note-best { padding:14px 12px; }
  .note-best > strong { font-size:28px; }
  .note-totals { gap:12px; }
  .note-kana-list { grid-template-columns:1fr; gap:4px; }
  .note-history li { grid-template-columns:1fr; gap:5px; }
  .note-word-count p { margin-left:0; }
}

.gift-entry { display:block; margin-left:auto; padding:6px 10px; background:none; border:0; color:#666; font-size:13px; }
.gift-sheet { width:min(560px,calc(100vw - 24px)); max-height:calc(100dvh - 32px); overflow:auto; padding:22px; box-sizing:border-box; background:#fff; border-radius:18px; color:#222; }
.gift-sheet p { line-height:1.7; }
.gift-conditions { margin:16px 0; padding-left:1.4em; font-size:14px; line-height:1.8; }
.gift-conditions li + li { margin-top:6px; }
.gift-sheet button { min-height:44px; }
.gift-products { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
.gift-products .post-game-paypay-button { display:grid; align-content:center; gap:10px; padding:14px 10px; border-radius:12px; min-width:0; }
.gift-products .post-game-paypay-button:disabled { opacity:.55; box-shadow:none; }
.gift-products .post-game-paypay-copy { display:grid; gap:5px; }
.gift-products .post-game-paypay-copy strong { font-size:17px; white-space:nowrap; }
.gift-products .post-game-paypay-copy small { font-size:13px; }
.gift-product-price { white-space:nowrap; }
.gift-product-detail,.gift-summary-part { display:inline-block; white-space:nowrap; }
.gift-sheet h2 { font-size:22px; line-height:1.5; overflow-wrap:anywhere; }
.gift-sheet h3 { margin-top:24px; font-size:18px; }
.gift-sheet .gift-close { flex-shrink:0; padding:6px 8px; background:transparent; color:#53685d; font-size:12px; font-weight:800; }
.gift-sheet .secondary-button,.gift-sheet .gift-text-button { background:transparent; color:#53685d; border:1px solid #bdc8bf; font-size:14px; }
.gift-sheet .gift-text-button { padding:8px 0; border:0; margin-top:12px; text-decoration:underline; text-underline-offset:4px; }
.gift-purchase-reason { padding:12px; background:#f5f4f0; border-radius:8px; font-size:14px; }
.gift-play-button,.post-game-retry-button.gift-play-button { width:100%; border:1px solid #6447ac; background:linear-gradient(115deg,#6740a9 0%,#ac3779 50%,#3566b0 100%); color:#fff; font-weight:800; box-shadow:0 5px 16px #6740a926; }
.gift-play-button:hover:not(:disabled) { filter:brightness(1.06); }
.gift-play-button:disabled { background:#e8e6e1; border-color:#d8d6d1; color:#716e68; box-shadow:none; opacity:1; }
.gift-play-button small { opacity:1; }
.gift-sheet .gift-play-button { margin-top:16px; min-height:56px; }
.gift-reactions { display:grid; gap:10px; border:0; padding:0; margin:24px 0; }
.gift-reactions legend { padding:0 0 12px; font-size:15px; }
.gift-reaction-option { position:relative; display:block; cursor:pointer; }
.gift-reaction-option input { position:absolute; opacity:0; width:1px; height:1px; }
.gift-reaction-option span { display:block; padding:12px 16px; border:1px solid #b7b0c2; border-radius:10px; color:#42324f; background:#fff; font-weight:700; }
.gift-reaction-option input:checked + span { border-color:#7953a6; background:#f0e8f8; box-shadow:inset 0 0 0 1px #7953a6; }
.gift-reaction-option input:focus-visible + span { outline:3px solid #207a73; outline-offset:3px; }
.gift-received { margin-top:28px; padding-top:16px; border-top:1px solid #bdc8bf; }
.gift-received summary { cursor:pointer; min-height:44px; padding:10px 0; color:#53685d; font-weight:700; }
.gift-donor { color:#207a73; font-weight:700; }
.gift-test-label { padding:10px; background:#fff5ce; }
.gift-history { overflow-wrap:anywhere; }
.gift-sheet [role="status"] { color:#555; }
.my-note-tabs button { flex-shrink:0; }

.note-saved-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:20px 0 12px; }
.note-saved-heading h3 { margin:0; }

.gift-type-options { display:flex; gap:8px; margin-bottom:16px; }
.gift-type-options button { flex:1; min-width:0; padding:8px; font-size:14px; line-height:1.4; white-space:nowrap; }
.gift-type-options button[aria-pressed="true"] { background:#243b32; color:#fff; border-color:#243b32; }
@media (max-width:359px) {
  .gift-type-options button { min-height:56px; }
  .gift-type-suffix { display:block; }
  .gift-products { grid-template-columns:1fr; }
}
#judgementCheckGiftOffer small { display:block; margin-top:8px; }
