/* Stili Adaptive Card v1.5 — vivono fuori da Razor <style> perché il parser
   interpreta "button" come tag HTML. Caricato da App.razor con <link>. */

.ai-artifact-adaptive-card { max-width: 760px; margin: 0 auto; }

.ai-adaptive-card-container {
    font-family: Inter, system-ui, -apple-system, sans-serif;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(27, 73, 119, 0.08), 0 1px 3px rgba(0, 0, 0, 0.04);
    padding: 24px;
    border: 1px solid #E5E7EB;
}

/* Container Adaptive interno (separator, padding fra body items) */
.ai-adaptive-card-container .ac-container { gap: 12px; }
.ai-adaptive-card-container .ac-textBlock { line-height: 1.5; }
.ai-adaptive-card-container .ac-textBlock[data-size="Large"],
.ai-adaptive-card-container .ac-textBlock[data-weight="Bolder"] { color: #1B4977; }

/* FactSet: tabella facts (title/value) con divider sottile e padding */
.ai-adaptive-card-container .ac-factset {
    background: #F8FAFC;
    border-radius: 8px;
    padding: 12px 16px;
    border: 1px solid #E5E7EB;
}
.ai-adaptive-card-container .ac-fact-title { color: #64748B; font-weight: 500; padding-right: 16px; }
.ai-adaptive-card-container .ac-fact-value { color: #0F172A; font-weight: 500; }

/* ColumnSet: aria fra colonne, separator visibile */
.ai-adaptive-card-container .ac-columnSet {
    gap: 16px; align-items: flex-end;
    padding: 8px 0; border-bottom: 1px dashed #E5E7EB;
}
.ai-adaptive-card-container .ac-columnSet:last-child { border-bottom: 0; }

/* Input.* */
.ai-adaptive-card-container .ac-input {
    font-family: inherit;
    font-size: 14px;
    padding: 8px 10px;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.ai-adaptive-card-container .ac-input:focus {
    outline: 0;
    border-color: #92B539;
    box-shadow: 0 0 0 3px rgba(146, 181, 57, 0.18);
}
.ai-adaptive-card-container .ac-input-label,
.ai-adaptive-card-container label.ac-input-label {
    color: #475569; font-size: 12px; font-weight: 500; margin-bottom: 4px; display: block;
}

/* Action.* — lo SDK adaptivecards@2.11 a volte genera <button> nudi senza class
   .ac-pushButton, quindi targettiamo direttamente i <button> dentro il container
   (più robusto). Style: positive/destructive vengono applicati come classi che
   contengono "positive"/"destructive" — selector attribute per coprire varianti. */
.ai-adaptive-card-container .ac-actionSet,
.ai-adaptive-card-container [class*="actionSet"] {
    display: flex; gap: 8px; flex-wrap: wrap;
    margin-top: 16px; padding-top: 16px; border-top: 1px solid #E5E7EB;
    justify-content: flex-end;
}
.ai-adaptive-card-container button,
.ai-adaptive-card-container .ac-pushButton {
    padding: 9px 20px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid #CBD5E1;
    background: #fff;
    color: #1B4977;
    cursor: pointer;
    font-family: inherit;
    line-height: 1.2;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    transition: background 0.15s, border-color 0.15s, transform 0.05s, box-shadow 0.15s;
}
.ai-adaptive-card-container button:hover,
.ai-adaptive-card-container .ac-pushButton:hover {
    background: #F1F5F9; border-color: #94A3B8; box-shadow: 0 2px 4px rgba(15, 23, 42, 0.08);
}
.ai-adaptive-card-container button:active,
.ai-adaptive-card-container .ac-pushButton:active { transform: translateY(1px); }

/* Style: positive → verde MagoWeb (--mw-green-500: #A9CA49, --mw-green-600: #92B539) */
.ai-adaptive-card-container button[class*="positive"],
.ai-adaptive-card-container .ac-pushButton[class*="positive"],
.ai-adaptive-card-container .style-positive,
.ai-adaptive-card-container [aria-label*="Conferma" i] {
    background: #A9CA49; color: #2A3F0A; border-color: #92B539;
    font-weight: 600;
}
.ai-adaptive-card-container button[class*="positive"]:hover,
.ai-adaptive-card-container .ac-pushButton[class*="positive"]:hover,
.ai-adaptive-card-container .style-positive:hover,
.ai-adaptive-card-container [aria-label*="Conferma" i]:hover {
    background: #92B539; color: #fff; border-color: #7CA02D;
}

/* Style: destructive → rosso ghost */
.ai-adaptive-card-container button[class*="destructive"],
.ai-adaptive-card-container .ac-pushButton[class*="destructive"],
.ai-adaptive-card-container .style-destructive {
    background: #fff; color: #DC2626; border-color: #FCA5A5;
}
.ai-adaptive-card-container button[class*="destructive"]:hover,
.ai-adaptive-card-container .ac-pushButton[class*="destructive"]:hover,
.ai-adaptive-card-container .style-destructive:hover {
    background: #FEE2E2; border-color: #DC2626;
}

/* === DARK MODE === */
body.dark-mode .ai-adaptive-card-container {
    background: #2a2a2a; border-color: #3a3a3a; color: #f0f0f0;
    box-shadow: 0 4px 16px rgba(0,0,0,0.5), 0 1px 3px rgba(0,0,0,0.3);
}
body.dark-mode .ai-adaptive-card-container .ac-textBlock[data-size="Large"],
body.dark-mode .ai-adaptive-card-container .ac-textBlock[data-weight="Bolder"] { color: #e8f1f8; }
body.dark-mode .ai-adaptive-card-container .ac-factset { background: #1f1f1f; border-color: #3a3a3a; }
body.dark-mode .ai-adaptive-card-container .ac-fact-title { color: #a0a0a0; }
body.dark-mode .ai-adaptive-card-container .ac-fact-value { color: #f0f0f0; }
body.dark-mode .ai-adaptive-card-container .ac-columnSet { border-bottom-color: #3a3a3a; }
body.dark-mode .ai-adaptive-card-container .ac-input { background: #1f1f1f; color: #f0f0f0; border-color: #4a4a4a; }
body.dark-mode .ai-adaptive-card-container .ac-input-label,
body.dark-mode .ai-adaptive-card-container label.ac-input-label { color: #b0b0b0; }
body.dark-mode .ai-adaptive-card-container .ac-actionSet,
body.dark-mode .ai-adaptive-card-container [class*="actionSet"] { border-top-color: #3a3a3a; }
body.dark-mode .ai-adaptive-card-container button,
body.dark-mode .ai-adaptive-card-container .ac-pushButton {
    background: #2a2a2a; color: #e0e0e0; border-color: #4a4a4a;
    box-shadow: 0 1px 2px rgba(0,0,0,0.4);
}
body.dark-mode .ai-adaptive-card-container button:hover,
body.dark-mode .ai-adaptive-card-container .ac-pushButton:hover {
    background: #3a3a3a; border-color: #6a7080; box-shadow: 0 2px 4px rgba(0,0,0,0.5);
}
body.dark-mode .ai-adaptive-card-container button[class*="destructive"],
body.dark-mode .ai-adaptive-card-container .ac-pushButton[class*="destructive"],
body.dark-mode .ai-adaptive-card-container .style-destructive {
    background: #2a1a1a; color: #ff8a8a; border-color: #5a2a2a;
}
body.dark-mode .ai-adaptive-card-container button[class*="destructive"]:hover,
body.dark-mode .ai-adaptive-card-container .ac-pushButton[class*="destructive"]:hover,
body.dark-mode .ai-adaptive-card-container .style-destructive:hover {
    background: rgba(127,29,29,0.40); border-color: #DC2626;
}
