/* Identidade da Biblioteca; regras limitadas à cruzadinha. */
.ft-cruzadinha{--cell-size:30px;}
.ft-cruzadinha .crossword-grid{display:grid;gap:2px;width:max-content;margin:auto;padding:8px;
 background:var(--ft-soft);border-radius:12px;}
.ft-cruzadinha .cell{position:relative;width:var(--cell-size);height:var(--cell-size);}
.ft-cruzadinha .cell.active{background:var(--ft-paper);border:1px solid var(--ft-line);border-radius:4px;}
.ft-cruzadinha .cell input{display:block;width:100%;height:100%;padding:7px 0 0;border:0;background:transparent;
 text-align:center;font-size:.88rem;font-weight:800;color:var(--ft-ink);text-transform:uppercase;border-radius:3px;}
.ft-cruzadinha .cell-number{position:absolute;top:0;left:2px;font-size:.5rem;font-weight:700;color:var(--ft-muted);pointer-events:none;}
.ft-cruzadinha .cell.active:focus-within{outline:2px solid var(--ft-blue);outline-offset:0;background:var(--ft-soft);z-index:1;}
.ft-cruzadinha .cell.solved{background:var(--ft-good-soft);border-color:var(--ft-good);}
.ft-cruzadinha .cell.solved input{color:var(--ft-good);opacity:1;-webkit-text-fill-color:var(--ft-good);}
.ft-cruzadinha .clues-group{margin-top:24px;}
.ft-cruzadinha .clues-group h3{margin:0 0 12px;color:var(--ft-blue);font-size:.85rem;font-weight:800;}
.ft-cruzadinha .clue-list{display:grid;gap:8px;margin:0;padding:0;list-style:none;}
.ft-cruzadinha .clue-button{display:block;width:100%;padding:12px;text-align:left;background:var(--ft-bg);
 color:var(--ft-ink);border:1px solid var(--ft-line);border-radius:10px;font-size:.85rem;line-height:1.6;cursor:pointer;}
.ft-cruzadinha .clue-button:hover,.ft-cruzadinha .active-clue .clue-button{background:var(--ft-soft);border-color:var(--ft-blue);}
.ft-cruzadinha .completed .clue-button{background:var(--ft-good-soft);border-color:var(--ft-good);color:var(--ft-good);text-decoration:line-through;}
@media(max-width:600px){.ft-cruzadinha{--cell-size:28px;}}
