body { font-family: sans-serif; background-color: #f4f4f9; color: #333; margin: 0; padding: 20px; }
.container { max-width: 900px; margin: auto; background: #fff; padding: 20px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
h1, h2, h3, h4 { color: #444; }
a { color: #007bff; text-decoration: none; }
a:hover { text-decoration: underline; }

/* Página Inicial */
.discussion-list a { display: block; padding: 15px; border: 1px solid #ddd; margin-bottom: 10px; border-radius: 8px; background: #fafafa; font-size: 1.1em; }
form { margin-top: 20px; display: flex; flex-direction: column; gap: 10px; }
.input-full { width: 100%; box-sizing: border-box; padding: 10px; border: 1px solid #ccc; border-radius: 4px; }
textarea { min-height: 100px; resize: vertical; }
form button { align-self: flex-start; border-radius: 4px; }
hr { border: none; border-top: 1px solid #eee; margin: 20px 0; }

/* Visualização da Discussão */
.breadcrumbs { margin-bottom: 15px; font-size: 0.9em; color: #666; }
.discussion-body { background-color: #e9ecef; padding: 20px; border-radius: 8px; margin-bottom: 10px; line-height: 1.6; }
.discussion-actions { display: flex; gap: 10px; margin-bottom: 20px; }
.delete-discussion-btn { background-color: #dc3545; }

.claim-card { border: 1px solid #ddd; padding: 15px; margin-top: 10px; border-radius: 5px; background-color: #fff; transition: all 0.3s ease; opacity: 1; }
.claim-card.removing { opacity: 0; transform: scale(0.95); }
.claim-card:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.claim-card p { margin: 0; }
.claim-link { color: inherit; text-decoration: none; display: block; }
.claim-card.focused { border-width: 2px; border-color: #007bff; background-color: #f0f7ff; }

.claim-pro { border-left: 4px solid #28a745; }
.claim-con { border-left: 4px solid #dc3545; }

.claim-footer { display: flex; justify-content: space-between; align-items: center; margin-top: 15px; flex-wrap: wrap; gap: 10px;}
.child-counters { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.child-counters span { font-size: 0.8em; padding: 3px 8px; border-radius: 12px; }
.counter-pro { background-color: #eaf6ec; color: #28a745; }
.counter-con { background-color: #fbebec; color: #dc3545; }
.reference-link { font-size: 1.2em; }

.claim-actions button { font-size: 12px; padding: 5px 8px; border-radius: 4px; }
.edit-btn { background-color: #ffc107; color: #212529; }
.delete-btn { background-color: #fbebec; color: #dc3545; }

.add-form, .edit-form { margin-top: 10px; }
.add-form textarea, .edit-form textarea { width: 100%; box-sizing: border-box; padding: 8px; border: 1px solid #ccc; border-radius: 4px; }
.add-form button, .edit-form button { border-radius: 4px; }
.add-reference-btn { font-size: 0.8em !important; padding: 3px 8px !important; background-color: #6c757d !important; }

.arguments-container { display: grid; grid-template-columns: 1fr; gap: 20px; margin-top: 20px; }
.pros, .cons { border-top: 1px solid #eee; padding-top: 10px; }
.no-args { color: #888; font-style: italic; }

@media (min-width: 768px) {
    .arguments-container {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
}
