body {
	font-family: 'Inter', Arial, sans-serif;
	background: #f7f8fa;
	color: #222;
	margin: 0;
	padding: 0;
	text-align: center;
}

* {
    box-sizing: border-box;
}

form {
	background: #fff;
	padding: 2em 1.5em 1em 1.5em;
	border-radius: 12px;
	box-shadow: 0 2px 16px rgba(0,0,0,0.08);
	margin-bottom: 2em;
	max-width: 400px;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 1em;
	margin: 0 auto;
	margin-bottom: 20px;
}

input, select, textarea, button {
	font-family: inherit;
	font-size: 1em;
	padding: 0.7em;
	border-radius: 6px;
	border: 1px solid #e0e0e0;
	background: #f7f8fa;
	color: #222;
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
}

input:focus, select:focus, textarea:focus, button:focus {
	outline: 2px solid #4f8cff;
	border-color: #4f8cff;
}

button {
	background: #4f8cff;
	color: #fff;
	cursor: pointer;
	border: none;
	transition: background 0.2s;
}
button:hover {
	background: #357ae8;
}


.event-cards {
	/* display: flex; */
	/* flex-wrap: wrap; */
	/* gap: 1em; */
	/* justify-content: center; */
}
.event-card {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	padding: 1em;
	min-width: 220px;
	max-width: 400px;
	/* display: flex; */
	/* flex-direction: column; */
	gap: 0.5em;
	position: relative;
	/* align-items: flex-start; */
	text-align: left;
	position: relative;
	margin: 14px auto;
}
.event-date, .event-type, .event-category, .event-comment {
	font-size: 1em;
}
.event-type {
	font-size: 1.5em;
}
.event-remove {
	position: absolute;
	top: 0;
	right: 0;
	background: none;
	border: none;
	font-size: 1.2em;
	cursor: pointer;
	width: auto;
}

input#event-category-input {
    border-radius: 0 0 6px 6px;
}

select#event-category {
    border-radius: 6px 6px 0 0;
    border-bottom: none;
}

div#type-radio-group input {
    width: 100%;
    margin: 0;
}

div#type-radio-group label {
    display: inline-block;
    text-align: center;
    flex: 1;
    font-size: 3em;
}

div#type-radio-group {
    display: flex;
}

.event-date, .event-type, .event-category {
    display: inline-block;
    font-size: 0.7em;
}

.event-comment {
    margin-top: 15px;
    font-family: serif;
    line-height: 1.5;
}

.event-date {
    background: #fbfbfb;
    padding: 2px 4px;
    border-radius: 4px;
    border: 1px solid #f2f2f2;
}

.event-type {
    background: #fbfbfb;
    padding: 2px 4px;
    border-radius: 4px;
    border: 1px solid #f2f2f2;
}


.event-category {
    background: #f0f9ff;
    padding: 2px 4px;
    border-radius: 4px;
    border: 1px solid #f2f2f2;
}

div#calendar-graph {
    width: 900px;
    margin: 50px auto;
    max-width: 100%;
}


.calendar-filters {
    display: flex;
    gap: 15px;
    width: 100%;
    max-width: 800px;
    margin: 45px auto;
}

div#calendar-graph-container {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    max-width: 930px;
    padding: 1px;
    margin: 30px auto;
}

