* { box-sizing: border-box; }
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    margin: 0;
    background: #f4f5f7;
    color: #1f2328;
}
a { color: #0969da; text-decoration: none; }
a:hover { text-decoration: underline; }

.navbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #1f2328;
    color: #fff;
    padding: 12px 24px;
    flex-wrap: wrap;
}
.navbar-brand a { color: #fff; font-weight: 700; font-size: 18px; }
.navbar-links a, .navbar-user a { color: #cfd3d8; margin-right: 16px; }
.navbar-links a:hover, .navbar-user a:hover { color: #fff; }
.navbar-user { display: flex; align-items: center; }
.navbar-user span { margin-right: 16px; color: #fff; }

.container {
    max-width: 1100px;
    margin: 24px auto;
    padding: 0 16px;
}

.card {
    background: #fff;
    border: 1px solid #d0d7de;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 16px;
}

table { width: 100%; border-collapse: collapse; }
th, td { text-align: left; padding: 10px; border-bottom: 1px solid #eaecef; }
th { background: #f6f8fa; }

.badge {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
}
.badge-gray { background: #6e7781; }
.badge-blue { background: #0969da; }
.badge-green { background: #1a7f37; }
.badge-red { background: #cf222e; }
.badge-orange { background: #bc4c00; }

.btn {
    display: inline-block;
    padding: 8px 16px;
    border-radius: 6px;
    border: 1px solid #d0d7de;
    background: #f6f8fa;
    color: #1f2328;
    cursor: pointer;
    font-size: 14px;
}
.btn:hover { background: #eaecef; text-decoration: none; }
.btn-primary { background: #1a7f37; border-color: #1a7f37; color: #fff; }
.btn-primary:hover { background: #166a2f; }
.btn-danger { background: #cf222e; border-color: #cf222e; color: #fff; }
.btn-danger:hover { background: #a91d28; }
.btn-warn { background: #bc4c00; border-color: #bc4c00; color: #fff; }

.form-group { margin-bottom: 14px; }
.form-group label { display: block; font-weight: 600; margin-bottom: 4px; }
.form-group input, .form-group select, .form-group textarea {
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #d0d7de;
    border-radius: 6px;
    font-size: 14px;
}

.alert { padding: 10px 14px; border-radius: 6px; margin-bottom: 14px; }
.alert-success { background: #dafbe1; color: #116329; }
.alert-error { background: #ffebe9; color: #82071e; }
.alert-info { background: #ddf4ff; color: #0349b4; }

.timer-display { font-size: 32px; font-weight: 700; font-variant-numeric: tabular-nums; }
.filters { display: flex; gap: 10px; margin-bottom: 16px; flex-wrap: wrap; }
.filters select, .filters input { padding: 6px 10px; border: 1px solid #d0d7de; border-radius: 6px; }

.comment { border-bottom: 1px solid #eaecef; padding: 10px 0; }
.comment-meta { font-size: 12px; color: #6e7781; }
.stat-grid { display: flex; gap: 16px; flex-wrap: wrap; }
.stat-card { flex: 1; min-width: 160px; }
.stat-card .num { font-size: 28px; font-weight: 700; }
