/* classes de componentes CoreDot — valores copiados da landing original */
.cd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-pixel);cursor:pointer;border:none;background:none;text-decoration:none;line-height:1.4}
.cd-btn--sm{font-size:10px;padding:12px 16px}.cd-btn--md{font-size:11px;padding:16px 22px}.cd-btn--lg{font-size:11px;padding:16px 22px}
.cd-btn--primary{background:var(--amarelo-fill);color:var(--on-accent);box-shadow:var(--shadow-btn);transition:transform var(--dur-fast)}
.cd-btn--primary:hover{transform:translate(-2px,-2px);color:var(--on-accent)}
.cd-btn--primary:active{transform:translate(0,0)}
.cd-btn--secondary{border:2px solid var(--amarelo);color:var(--amarelo);padding:14px 22px;transition:background var(--dur-fast)}
.cd-btn--secondary.cd-btn--sm{padding:10px 16px}
.cd-btn--secondary:hover{background:var(--tint-accent-2);color:var(--amarelo)}
.cd-btn--ghost{font-family:var(--font-terminal);font-size:19px;color:var(--branco-quente);padding:6px 0}
.cd-btn--ghost:hover{color:var(--amarelo)}
.cd-btn:disabled{opacity:.45;pointer-events:none}
.cd-input{background:var(--preto-1);border:1px solid var(--borda);color:var(--branco-quente);font-family:var(--font-terminal);font-size:19px;padding:12px 16px;width:100%;box-sizing:border-box;transition:border-color var(--dur-med)}
.cd-input::placeholder{color:var(--cinza)}
.cd-input:focus{outline:none;border-color:var(--amarelo)}
.cd-check{display:inline-flex;align-items:baseline;gap:10px;cursor:pointer;font-family:var(--font-terminal);font-size:19px;color:var(--branco-quente)}
.cd-check input{position:absolute;opacity:0;width:0;height:0}
.cd-check .cd-check-on{display:none;color:var(--verde)}
.cd-check .cd-check-off{color:var(--cinza)}
.cd-check input:checked~.cd-check-on{display:inline}
.cd-check input:checked~.cd-check-off{display:none}
.cd-badge{display:inline-flex;align-items:center;font-family:var(--font-terminal);font-size:17px;border:1px solid var(--borda);background:var(--preto-0);padding:2px 10px}
.cd-badge--amarelo{color:var(--amarelo-claro)}
.cd-badge--creme{color:var(--branco-quente);background:var(--preto-1)}
.cd-badge--verde{color:var(--verde)}
.cd-badge--vermelho{color:var(--vermelho)}
.cd-badge--cinza{color:var(--cinza);font-size:16px;padding:1px 8px}
.cd-card{background:var(--preto-1);border:1px solid var(--borda);padding:26px;transition:border-color var(--dur-med),transform var(--dur-med)}
.cd-card--accent{border-top:2px solid var(--amarelo)}
.cd-card--hover:hover{border-color:var(--amarelo);transform:translateY(-3px)}
.cd-card--shadow{box-shadow:var(--shadow-card)}
.cd-chip{display:inline-flex;border:1px solid var(--borda);background:var(--preto-1);padding:8px 16px;font-family:var(--font-terminal);font-size:20px;color:var(--branco-quente);transition:border-color var(--dur-med)}
.cd-chip:hover{border-color:var(--amarelo)}
.cd-marker{font-family:var(--font-pixel);font-size:10px;color:var(--amarelo);margin:0 0 18px}
.cd-progress{display:flex;align-items:center;gap:14px}
.cd-progress-track{flex:1;display:flex;gap:4px;background:var(--preto-0);border:2px solid var(--branco-quente);padding:6px}
.cd-progress-seg{flex:1;height:16px;background:var(--preto-2)}
.cd-progress-seg--on{background:var(--amarelo-fill)}
.cd-progress-label{font-family:var(--font-terminal);font-size:22px;color:var(--branco-quente)}
.cd-dialog{position:relative;border:1px solid var(--amarelo);background:var(--tint-accent);padding:12px 16px;font-family:var(--font-terminal);font-size:19px;color:var(--amarelo);line-height:1.6}
.cd-dialog-arrow{position:absolute;left:-8px;top:20px;width:14px;height:14px;background:var(--preto-1);border-left:1px solid var(--amarelo);border-bottom:1px solid var(--amarelo);transform:rotate(45deg)}
.cd-toast{display:inline-flex;align-items:center;gap:12px;border:1px dashed var(--amarelo);background:var(--tint-accent);padding:14px 18px;font-family:var(--font-terminal);font-size:19px;color:var(--amarelo-claro);line-height:1.6}
.cd-window{background:var(--preto-1);border:1px solid var(--borda)}
.cd-window-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--borda)}
.cd-window-dot{width:12px;height:12px;border-radius:50%}
.cd-window-title{margin-left:8px;font-family:var(--font-terminal);font-size:17px;color:var(--cinza)}
.cd-window-body{padding:22px;font-family:var(--font-terminal);font-size:21px;line-height:1.75}
.cd-cursor{display:inline-block;width:8px;height:14px;background:var(--amarelo-fill);vertical-align:-2px;animation:blink 1.1s steps(1) infinite}
