
* { box-sizing: border-box; }
body {
font-family: Arial, Helvetica, sans-serif;
background: #f7f9fb;
color: #333;
margin: 0;
}

header {
background: #18a17f;
color: #fff;
padding: 22px 16px;
text-align: center;
}
header h1 { margin: 0 0 6px; }
header p { margin: 0; opacity: 0.95; }

main {
max-width: 900px;
margin: 20px auto 40px;
padding: 0 16px;
}

section {
background: #fff;
margin-bottom: 18px;
padding: 14px;
border-radius: 10px;
box-shadow: 0 2px 10px rgba(0,0,0,.05);
}

h2 { margin: 6px 0 12px; }

.row {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin: 10px 0;
}

input, select, textarea, button {
font: inherit;
padding: 10px 12px;
border: 1px solid #cfd7df;
border-radius: 8px;
}

input, select, textarea {
background: #fff;
}

textarea { width: 100%; }

button {
background: #18a17f;
color: #fff;
border: none;
cursor: pointer;
transition: .2s;
}
button:hover { background: #138a6c; }

button.small { padding: 6px 10px; font-size: 0.9rem; }
.btn-danger { background: #e05555; }
.btn-danger:hover { background: #c94545; }

ul { list-style: none; padding: 0; margin: 0; }
li {
background: #f5f8fa;
margin-bottom: 8px;
padding: 10px 12px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
li button { margin-left: 6px; }

.card {
background: #f9fcff;
border: 1px solid #e7eef5;
border-radius: 10px;
padding: 10px 12px;
}
.muted { color: #678; font-size: 0.95rem; }

footer {
text-align: center;
margin-top: 40px;
font-size: 0.9rem;
color: #678;
padding: 18px 12px 30px;
margin: 0;
line-height: 1.2;
}

#toast {
position: fixed;
right: 16px;
top: 16px;
background: #18a17f;
color: #fff;
padding: 10px 14px;
border-radius: 8px;
box-shadow: 0 8px 30px rgba(0,0,0,.12);
opacity: 0;
transform: translateY(-10px);
pointer-events: none;
transition: .25s;
z-index: 9999;
}
#toast.show {
opacity: 1;
transform: translateY(0);
}

@media (max-width: 600px) {
.row { flex-direction: column; }
li { flex-direction: column; align-items: flex-start; }
}
