:root {
    --bg: #0b1020;
    --card: #121a35;
    --fg: #eaf0ff;
    --muted: #aab5d6;
    --acc: #6ea8fe;
}

* {
    box-sizing: border-box
}

html, body {
    height: 100%
}

body {
    margin: 0;
    background: linear-gradient(180deg, #0b1020, #090f1f 35%, #0e1630);
    color: var(--fg);
    font-family: system-ui, Segoe UI, Roboto, Arial, sans-serif
}

.wrap {
    max-width: 960px;
    margin: 0 auto;
    padding: 32px
}

header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 16px 0 24px
}

header .logo {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: radial-gradient(circle at 30% 30%, #7fb0ff, #3a64c6)
}

h1 {
    margin: 0;
    font-weight: 700;
    letter-spacing: .3px
}

p.muted {
    color: var(--muted)
}

.grid {
    display: grid;
    grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px
}

.card {
    background: var(--card);
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 16px;
    padding: 18px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, .25)
}

.card h3 {
    margin: 0 0 6px
}

.btn {
    appearance: none;
    border: 1px solid rgba(255, 255, 255, .1);
    background: #15224a;
    color: var(--fg);
    padding: 10px 14px;
    border-radius: 12px;
    cursor: pointer;
    font-weight: 600;
    text-decoration: none;
    display: inline-block
}

.btn:hover {
    border-color: rgba(255, 255, 255, .25)
}

.row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

code {
    background: #0b132b;
    border: 1px solid rgba(255, 255, 255, .08);
    padding: 2px 6px;
    border-radius: 6px
}

footer {
    margin: 28px 0 12px;
    color: var(--muted);
    font-size: .9rem
}

.ok {
    color: #6ee7a8
}

.err {
    color: #ff8b8b
}

.banner {
    margin: 12px 0;
    padding: 12px;
    border-radius: 10px;
    background: #2b1230;
    border: 1px solid #ff5670;
    color: #ffe3e8
}

table {
    width: 100%;
    border-collapse: collapse
}

th, td {
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    padding: 8px 6px;
    text-align: left
}

input, select, textarea {
    padding: 8px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, .15);
    background: #0b132b;
    color: var(--fg)
}

form .row {
    align-items: center
}