.pt [hidden] { display: none !important; }
.pt .pt-tabs { display: flex; gap: .25rem; border-bottom: 1px solid var(--bh-line); }
.pt-tabs button { min-height: 48px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--bh-muted); padding: .6rem .85rem; font-weight: 650; }
.pt-tabs button[aria-selected="true"] { color: var(--bh-accent); border-bottom-color: var(--bh-accent); }
.pt-tabs button:focus-visible, .pt-input:focus-visible, .pt-link:focus-visible, .pt-word:has(input:focus-visible) { outline: 3px solid var(--bh-accent); outline-offset: 3px; }
.pt h2 { font-size: 1.3rem; margin: 1.3rem 0 .5rem; }
.pt-progress { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .3rem 1rem; }
.pt-progress h2 { margin-bottom: 0; }
.pt-progress p { display: flex; flex-wrap: wrap; gap: .3rem .9rem; margin: .5rem 0; color: var(--bh-muted); font-size: .9rem; font-variant-numeric: tabular-nums; }
.pt-rules { color: var(--bh-muted); line-height: 1.55; margin: .7rem 0 1rem; }
.pt-clue { margin: 1rem 0 1.2rem; padding: 1rem 1.1rem; border: 1px solid var(--bh-line); border-radius: 8px; background: var(--bh-selected); }
.pt-clue span { display: block; color: #35635b; font-size: .85rem; margin-bottom: .25rem; }
.pt-clue strong { display: block; color: var(--bh-ink); font-size: 1.65rem; line-height: 1.25; overflow-wrap: anywhere; }
.pt-selection-label, .pt legend { font-size: 1rem; font-weight: 650; margin-bottom: .75rem; }
.pt-words { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .6rem; }
.pt-word { display: flex; align-items: center; gap: .55rem; min-height: 62px; border: 1px solid var(--bh-line); border-radius: 8px; background: #fff; padding: .7rem .65rem; cursor: pointer; }
.pt-word input { flex: 0 0 auto; width: 17px; height: 17px; accent-color: var(--bh-accent); }
.pt-word span { font-weight: 650; line-height: 1.3; overflow-wrap: anywhere; }
.pt-word:has(input:checked) { background: var(--bh-selected); border-color: var(--bh-accent); }
.pt-word:has(input:disabled) { cursor: default; color: var(--bh-muted); }
.pt-word:has(input:checked:disabled) { color: #174f47; }
.pt-picked-count { font-size: .9rem; color: var(--bh-muted); margin: .65rem 0 .9rem; font-variant-numeric: tabular-nums; }
.pt-turn-result { margin-top: 1rem; border-top: 1px solid var(--bh-line); padding-top: .4rem; }
.pt-turn-result #pt-turn-hits { font-weight: 700; color: var(--bh-accent); }
.pt-turn-result #pt-next-turn { margin-top: .9rem; }
.pt-summary { list-style: none; padding: 0; margin: 1rem 0 1.4rem; }
.pt-summary li { display: flex; gap: .75rem; justify-content: space-between; border-bottom: 1px solid var(--bh-line); padding: .8rem 0; }
.pt-summary span { font-weight: 650; }
.pt-summary small { color: var(--bh-muted); }
.pt-share-note { color: var(--bh-muted); line-height: 1.6; font-size: .9rem; margin: .8rem 0 0; }
.pt-field-label { display: block; font-weight: 650; margin: 1rem 0 .45rem; }
.pt-field-label span { font-weight: 400; color: var(--bh-muted); font-size: .85rem; }
.pt-input, .pt-link { width: 100%; border: 1px solid var(--bh-line); border-radius: 8px; padding: .8rem; color: var(--bh-ink); background: #fff; caret-color: var(--bh-accent); }
.pt-input { min-height: 48px; margin-bottom: 1rem; }
.pt-link { resize: vertical; min-height: 6rem; font-size: .85rem; overflow-wrap: anywhere; margin-bottom: .65rem; }
.pt-input::placeholder, .pt-link::placeholder { color: #626e6a; }
.pt-paste { font-size: 1rem; }
.pt-disclosure { border-top: 1px solid var(--bh-line); padding-top: .9rem; margin: 1.2rem 0; }
.pt-disclosure summary { min-height: 44px; padding: .25rem 0; font-weight: 650; cursor: pointer; }
.pt-disclosure p { color: var(--bh-muted); font-size: .9rem; line-height: 1.6; }
.pt-manual { margin: .4rem 0 .7rem; font-size: .85rem; }
.pt-manual summary { color: var(--bh-accent); min-height: 44px; padding: .6rem 0; cursor: pointer; font-weight: 400; }
.pt-link-note { color: var(--bh-muted); font-size: .9rem; margin: .7rem 0; }
.pt-success { color: #176457; line-height: 1.6; }
.pt-role-note { color: var(--bh-muted); margin: 1rem 0 .5rem; }
.pt-error { color: #933a26; background: #fff2ed; border: 1px solid #ebc4b8; border-radius: 8px; padding: .8rem; line-height: 1.6; margin-top: 1rem; }
.pt-comparison-words { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4rem; border-block: 1px solid var(--bh-line); margin: 1rem 0; padding: .5rem 0; }
.pt-comparison-words h3 { font-size: .95rem; margin-top: .8rem; color: var(--bh-muted); }
.pt-comparison-words p { font-size: 1.1rem; line-height: 1.6; font-weight: 650; }
.pt #pt-new-challenge { display: block; margin-top: 1rem; }
@media (hover: hover) { .pt-word:not(:has(input:disabled)):hover { border-color: var(--bh-accent); background: #f5faf8; } .pt-tabs button:hover { color: var(--bh-accent); } }
@media (max-width: 540px) { .pt .bh-topline { flex-wrap: wrap; } .pt .bh-help { margin-left: auto; } .pt-words { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .45rem; } .pt-word { min-height: 62px; padding: .65rem .4rem; gap: .35rem; font-size: .9rem; } .pt-word input { width: 15px; height: 15px; } .pt-clue strong { font-size: 1.4rem; } .pt-comparison-words { grid-template-columns: 1fr; gap: 0; } }
@media (max-width: 380px) { .pt-words { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pt .bh-result-actions { flex-direction: column; } .pt .bh-play-actions { flex-direction: column; align-items: stretch; gap: .25rem; } .pt-tabs button { padding-inline: .6rem; font-size: .9rem; } }

.pt .bh-return { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1rem; }
.pt .bh-return > a, .pt .bh-return > button { display: inline-flex; align-items: center; min-height: 44px; }

.pt-exchange-guide { max-width: 70ch; margin: .8rem 0 1rem; padding-block: .7rem; border-block: 1px solid var(--bh-line); color: var(--bh-muted); font-size: .9rem; line-height: 1.6; }
.pt ::selection { color: #fff; background: #176f65; }

.pt #pt-new-challenge { min-height: 48px; padding: .75rem 1rem; border: 1px solid var(--bh-accent); border-radius: 8px; font-weight: 650; text-decoration: none; }

.pt #pt-comparison-clue { overflow-wrap: anywhere; line-height: 1.6; }

html[lang="de"] .pt-word span { min-width:0; hyphens:auto; }
@media(max-width:540px){html[lang="de"] .pt-words{grid-template-columns:repeat(2,minmax(0,1fr));}html[lang="de"] .pt .bh-play-actions{flex-direction:column;align-items:stretch;gap:.5rem;}html[lang="de"] .pt .bh-play-actions button{width:100%;min-height:48px;}}

/* Keep the live announcement while showing the copy outcome beside its control. */
#pt-exchange-feedback.copy-at-control{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pt-return-note{font-size:14px;line-height:1.6;margin-block:20px;color:var(--bh-muted,#465b69)}
