.ofsi-word-teaser{padding:15px 14px;margin:0 0 18px;border:1px solid #e3e8e5;border-radius:8px;background:#f7f9f4;color:#29383d}.ofsi-word-teaser .h4{margin:0 0 9px}.ofsi-word-teaser .h4 a{color:#00607b}.ofsi-word-teaser p{margin:0 0 10px;font-size:13px;line-height:1.5}.ofsi-word-teaser__cells{display:flex;gap:6px;margin:12px 0}.ofsi-word-teaser__cells span{display:block;width:31px;height:34px;border:2px solid #b6c9c2;border-radius:4px;background:#fff}.ofsi-word-teaser__play{display:flex;justify-content:space-between;padding-top:10px;border-top:1px solid #dce6df;color:#00607b;font-weight:600;font-size:14px}.ofsi-word-teaser__progress{color:#587169}.ofsi-word{max-width:560px;margin:0 auto 32px;color:#29383d}.ofsi-word [hidden]{display:none!important}.ofsi-word__intro p{margin:0 0 12px;line-height:1.6;font-size:15px}.ofsi-word__intro time{color:#00607b;font-weight:600}.ofsi-word__legend{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 13px;margin:18px 0;font-size:12px}.ofsi-word__legend span{display:flex;align-items:center;gap:5px}.ofsi-word__legend b{display:inline-grid;width:23px;height:23px;place-items:center;border-radius:3px;color:#fff}.ofsi-word .correct,.ofsi-word-teaser .correct{background:#2bb673!important;color:#fff;border-color:#2bb673!important}.ofsi-word .present,.ofsi-word-teaser .present{background:#ffb81c!important;color:#222;border-color:#ffb81c!important}.ofsi-word .absent,.ofsi-word-teaser .absent{background:#a0a0a0!important;color:#fff;border-color:#a0a0a0!important}.ofsi-word__board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;max-width:310px;margin:0 auto}.ofsi-word__cell{position:relative;display:grid;place-items:center;aspect-ratio:1;border:2px solid #c4c4c4;border-radius:4px;background:#fff;color:#222;font-size:27px;font-weight:700;line-height:1}.ofsi-word__cell small{position:absolute;bottom:3px;right:4px;font-size:11px;line-height:1}.ofsi-word__cell--current{border-color:#c4c4c4}.ofsi-word__message{min-height:25px;margin:14px 0 10px;text-align:center;font-size:14px;line-height:1.5}.ofsi-word__form{max-width:350px;margin:0 auto 17px}.ofsi-word__form label{display:block;margin-bottom:6px;font-size:13px;font-weight:600}.ofsi-word__form>div{display:flex;gap:7px}.ofsi-word__form input{min-width:0;width:100%;padding:9px;border:1px solid #c4c4c4;border-radius:5px;background:#fff;color:#222;font-size:19px;letter-spacing:.12em;text-transform:uppercase}.ofsi-word button,.ofsi-word__actions a{border:0;border-radius:5px;cursor:pointer;font:600 14px/1.4 Arial,sans-serif}.ofsi-word__form button{padding:9px 12px;background:#2bb673;color:#fff}.ofsi-word__form small{display:block;margin-top:6px;color:#62787f;font-size:12px}.ofsi-word__keyboard{display:grid;gap:5px;margin:0 auto;max-width:530px}.ofsi-word__key-row{display:flex;justify-content:center;gap:4px}.ofsi-word__keyboard button{flex:1;max-width:43px;height:43px;padding:0;background:#e9e9e9;color:#222;font-size:16px}.ofsi-word__keyboard button[data-key=Enter],.ofsi-word__keyboard button[data-key=Backspace]{flex:1.65;max-width:70px;font-size:12px}.ofsi-word button:disabled{opacity:.5;cursor:default}.ofsi-word button:focus-visible,.ofsi-word a:focus-visible{outline:2px solid #00607b;outline-offset:3px}.ofsi-word__result{margin:22px 0 0;padding:18px;border:1px solid #dce6df;border-radius:8px;background:#f7f9f4;text-align:center}.ofsi-word__result p{margin:0 0 10px;line-height:1.6}.ofsi-word__result [data-word-answer]{font-size:21px;font-weight:600;color:#00607b}.ofsi-word__actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.ofsi-word__actions button,.ofsi-word__actions a{display:inline-block;padding:10px 13px;background:#2bb673;color:#fff}.ofsi-word__footnote{margin:22px 0 0;color:#62787f;font-size:12px;line-height:1.6;text-align:center}@media(max-width:599px){.ofsi-word__key-row{gap:3px}.ofsi-word__keyboard button{height:42px;font-size:14px}.ofsi-word__form input{font-size:18px}.ofsi-word__board{max-width:288px}.ofsi-word__legend{gap:7px 9px;font-size:11px}}

.ofsi-word-teaser .h4,.ofsi-word-teaser p{padding:0}

/* The site-wide button margin and text shadow must not affect game keys. */
.ofsi-word .ofsi-word__keyboard button{all:unset;box-sizing:border-box;display:grid;place-items:center;position:relative;flex:1 1 0%;min-width:0;max-width:43px;height:44px;margin:0!important;padding:0;border:1px solid transparent;border-radius:5px;background:#e9e9e9;color:#222;font:700 16px/1 Arial,sans-serif;text-shadow:none!important;box-shadow:none;cursor:pointer;user-select:none;touch-action:manipulation}
.ofsi-word .ofsi-word__key-row{display:flex;gap:4px;justify-content:center;width:100%;margin:0;padding:0}
.ofsi-word .ofsi-word__keyboard button[data-key=Enter],.ofsi-word .ofsi-word__keyboard button[data-key=Backspace]{flex:1.6 1 0%;max-width:68px;font-size:11px}
.ofsi-word .ofsi-word__keyboard button.correct{background:#2bb673!important;color:#fff!important;border-color:#2bb673!important}
.ofsi-word .ofsi-word__keyboard button.present{background:#ffb81c!important;color:#222!important;border-color:#ffb81c!important}
.ofsi-word .ofsi-word__keyboard button.absent{background:#a0a0a0!important;color:#fff!important;border-color:#a0a0a0!important}
.ofsi-word .ofsi-word__keyboard button::before{content:none!important;display:none!important}
.ofsi-word .ofsi-word__keyboard button::after{content:attr(data-mark);position:absolute;right:2px;bottom:2px;color:inherit;font:700 9px/1 Arial,sans-serif;text-shadow:none;pointer-events:none}
.ofsi-word .ofsi-word__keyboard button:focus-visible{outline:2px solid #00607b;outline-offset:2px}
.ofsi-word .ofsi-word__keyboard button:disabled{opacity:.55;cursor:default}
.ofsi-word .ofsi-word__form button{margin:0!important;min-width:108px;padding:10px 12px;border:0;border-radius:5px;background:#2bb673!important;color:#fff!important;font:600 14px/1.3 Arial,sans-serif;text-shadow:none!important;box-shadow:none}
@media(max-width:599px){.ofsi-word .ofsi-word__key-row{gap:3px}.ofsi-word .ofsi-word__keyboard button{height:44px;font-size:15px}.ofsi-word .ofsi-word__keyboard button[data-key=Enter],.ofsi-word .ofsi-word__keyboard button[data-key=Backspace]{font-size:10px}}
/* 2194: игра слева, правила/результат справа; телефон — одна колонка. */
.ofsi-word{max-width:none;width:100%;margin:0 0 32px;box-sizing:border-box}
.ofsi-word__top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.ofsi-word__intro{min-width:0}.ofsi-word__intro p{margin-bottom:6px}
.ofsi-word .ofsi-word__rules-toggle{flex:none;position:static;margin:0!important;padding:7px 12px!important;background:#edf3f5!important;color:#155a80!important;border:1px solid #b7cbd5!important;border-radius:8px;font:600 13px/1.4 Arial,sans-serif;text-shadow:none!important;box-shadow:none}
.ofsi-word__layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(210px,.9fr);gap:24px;align-items:start}
.ofsi-word__play,.ofsi-word__side{min-width:0}
.ofsi-word .ofsi-word__side{width:auto!important;max-width:none!important;min-width:0;display:block;margin:0;padding:0}
.ofsi-word__play .ofsi-word__legend{margin-top:0}
.ofsi-word__rules{padding:18px;border:1px solid #d5e1dc;border-radius:12px;background:#f7f9f4;box-sizing:border-box}
.ofsi-word__rules h2{font-size:19px;line-height:1.3;font-weight:600;margin:0 0 12px;padding:0;border:0;background:none}
.ofsi-word__rules p{font-size:14px;line-height:1.55;margin:0 0 12px;padding:0}
.ofsi-word__rules>p:last-child{margin-bottom:0}
.ofsi-word__examples{margin:16px 0}
.ofsi-word__examples p{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.ofsi-word__examples b{position:relative;display:grid;place-items:center;flex:0 0 36px;width:36px;height:39px;border-radius:5px;font-size:21px;line-height:1;color:#fff}
.ofsi-word__examples b small{position:absolute;right:3px;bottom:2px;font-size:10px}
.ofsi-word__examples span{min-width:0}
.ofsi-word__side .ofsi-word__result{margin:0;padding:18px;border-radius:12px}
.ofsi-word__side .ofsi-word__rules:not([hidden])+.ofsi-word__result:not([hidden]){margin-top:16px}
@media(max-width:1023px){.ofsi-word__layout{grid-template-columns:minmax(0,1fr);gap:16px}.ofsi-word__play{grid-row:2}.ofsi-word .ofsi-word__side{display:contents}.ofsi-word__rules{grid-row:1}.ofsi-word__result{grid-row:3}.ofsi-word__intro p{font-size:14px}.ofsi-word__top{gap:8px}.ofsi-word__rules{padding:14px}.ofsi-word__rules p{font-size:13px}}

.ofsi-word .ofsi-word__actions button,.ofsi-word .ofsi-word__actions a{text-transform:none!important}

/* Keep result actions readable after a tap, keyboard focus and hover. */
.ofsi-word .ofsi-word__actions button:hover,.ofsi-word .ofsi-word__actions button:focus,.ofsi-word .ofsi-word__actions button:active,.ofsi-word .ofsi-word__actions a:hover,.ofsi-word .ofsi-word__actions a:focus,.ofsi-word .ofsi-word__actions a:active{background:#2bb673!important;color:#fff!important;text-shadow:none!important}

/* Matching result actions; the owner chooses the palette separately. */
.ofsi-word .ofsi-word__actions>button,.ofsi-word .ofsi-word__actions>a{display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:216px;max-width:100%;height:40px!important;min-height:40px!important;margin:0!important;padding:2px 8px!important;border:0;border-radius:8px!important;font:700 15px/20px "PT Sans",Arial,sans-serif!important;text-shadow:none!important;box-shadow:none!important;text-decoration:none!important;white-space:normal!important;line-height:18px!important}
.ofsi-word__share-fallback{width:100%;margin-top:14px;text-align:left}.ofsi-word__share-fallback label{display:block;font-size:14px;line-height:1.4}.ofsi-word__share-fallback textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;height:230px;margin-top:6px;padding:8px;border:1px solid #a8beb5;border-radius:5px;background:#fff;color:#29383d;font:14px/1.4 monospace;resize:vertical}

/* Editable positions and short invalid-word feedback, TEST2211. */
.ofsi-word__cell{font-size:32px}.ofsi-word__cell--editable{cursor:pointer}.ofsi-word .ofsi-word__cell--selected{border-color:#2bb673!important;box-shadow:0 0 0 1px #2bb673;outline:none}.ofsi-word__cell--editable:focus-visible{outline:2px solid #2bb673;outline-offset:2px}.ofsi-word__message--error{color:#c0392b!important}
.ofsi-word--invalid .ofsi-word__cell--current{animation:ofsi-word-invalid 2s ease-in-out}
@keyframes ofsi-word-invalid{0%,100%{color:inherit;transform:translateX(0)}15%,85%{color:#c0392b}20%,40%,60%{transform:translateX(-2px)}30%,50%,70%{transform:translateX(2px)}80%{transform:translateX(0)}}
@keyframes ofsi-word-invalid-calm{0%,100%{color:inherit}15%,85%{color:#c0392b}}
@media(prefers-reduced-motion:reduce){.ofsi-word--invalid .ofsi-word__cell--current{animation-name:ofsi-word-invalid-calm}}
@media(max-width:599px){.ofsi-word__cell{font-size:30px}}

/* TEST2221: reject Latin input without changing the five draft positions. */
.ofsi-word__message--latin{color:#a77518!important}.ofsi-word__layout-badge{display:inline-block;font-size:12px;font-weight:700;padding:1px 5px;border:1px solid currentColor;border-radius:4px;white-space:nowrap}
.ofsi-word--latin .ofsi-word__cell--selected{animation:ofsi-word-latin-pulse 1s ease-in-out}
@keyframes ofsi-word-latin-pulse{0%,100%{background-color:#fff}45%{background-color:#f6edda}}
@media(prefers-reduced-motion:reduce){.ofsi-word--latin .ofsi-word__cell--selected{animation:none;background-color:#f6edda}}
