/* Part B · slides 8–14 (Herramientas). Classes are prefixed p1- so they never collide with other parts. */
.p1-logo { display: block; flex-shrink: 0; object-fit: contain; }

/* Chat without timestamps: every line on screen stays ≥ 26 px. */
.p1-chat { position: absolute; background: var(--chat-bg); border: 1px solid var(--line); border-radius: 22px; overflow: hidden; display: flex; flex-direction: column; }
.p1-chat-body { display: flex; flex-direction: column; gap: 16px; padding: 24px 26px; flex: 1; overflow: hidden; }
.p1-bubble { max-width: 94%; padding: 14px 22px; border-radius: 20px; font-size: 30px; line-height: 1.3; }
.p1-bubble.in { background: var(--chat-in); align-self: flex-start; border-top-left-radius: 6px; }
.p1-bubble.out { background: var(--chat-out); align-self: flex-end; border-top-right-radius: 6px; }
.p1-bubble .p1-hl { border-radius: 6px; padding: 0 6px; }
.p1-bubble .p1-link { color: #53BDEB; text-decoration: underline; text-underline-offset: 4px; }

/* Slide 8: the tool call as a fill-in-the-blanks function call. */
.p1-card { background: var(--panel); border: 2px solid var(--line-hi); border-radius: 18px; padding: 16px 30px; font-family: var(--mono); font-size: 30px; line-height: 58px; white-space: pre; color: var(--c-text); }
.p1-card .fn { color: var(--c-fn); font-weight: 700; }
.p1-card .pn { color: var(--c-punct); }
.p1-card .key { color: var(--c-prop); display: inline-block; }
.p1-card .arg { padding-left: 2ch; display: flex; align-items: center; }
.p1-slot { display: inline-grid; place-items: center; height: 48px; border-radius: 10px; border: 2px dashed var(--accent); line-height: 1; box-sizing: border-box; }
.p1-slot > span { grid-area: 1 / 1; }
.p1-slot .q { color: var(--accent); font-weight: 700; }
.p1-label { font-family: var(--sans); font-size: 26px; font-weight: 600; color: var(--muted); display: grid; justify-items: center; white-space: nowrap; }
.p1-label > span { grid-area: 1 / 1; }

.p1-node { position: absolute; border-radius: 20px; background: var(--panel); border: 2px solid var(--line-hi); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; }
.p1-avatar { border-radius: 50%; display: grid; place-items: center; font-weight: 700; color: #000; background: var(--accent); flex-shrink: 0; }

/* Slide 9: tool tiles around Chema. */
.p1-tile { position: absolute; display: flex; align-items: center; gap: 22px; padding: 0 26px; border-radius: 18px; background: var(--panel); border: 2px solid var(--line-hi); box-sizing: border-box; }
.p1-tile .brand { font-size: 30px; font-weight: 700; line-height: 1.15; white-space: nowrap; }
.p1-tile .tool { font-family: var(--mono); font-size: 26px; color: var(--accent); margin-top: 4px; white-space: nowrap; }

/* Slide 10: tool calls inline in the chat. */
.p1-call { align-self: center; display: flex; align-items: center; gap: 14px; padding: 6px 18px; border-radius: 12px; border: 2px solid var(--line-hi); background: var(--bg-deep); font-family: var(--mono); font-size: 26px; white-space: nowrap; }
.p1-call .ok { color: var(--safe); font-weight: 700; font-family: var(--sans); }
