/* MORZA Lisans Merkezi paneli: derleme gerektirmeyen küçük stil seti. */
:root {
  --color-bg: #f6f5f2;
  --color-surface: #ffffff;
  --color-text: #1d1d1f;
  --color-muted: #5f6368;
  --color-line: #e3e1dc;
  --color-accent: #1f4e8c;
  --color-danger: #b42318;
  --color-danger-bg: #fef3f2;
  --color-success: #067647;
  --color-success-bg: #ecfdf3;
  --color-warning-bg: #fffaeb;
  --radius: 12px;
  --space: 1rem;
}

* { box-sizing: border-box; }
body { margin: 0; font: 15px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: var(--color-text); background: var(--color-bg); }
a { color: var(--color-accent); }
header.topbar { display: flex; align-items: center; justify-content: space-between; gap: var(--space); padding: .75rem 1.5rem; background: var(--color-surface); border-bottom: 1px solid var(--color-line); }
header.topbar nav { display: flex; gap: 1rem; align-items: center; }
main { max-width: 1100px; margin: 0 auto; padding: 1.5rem; }
main.narrow { max-width: 420px; padding-top: 10vh; }
h1 { font-size: 1.4rem; margin: 0 0 1rem; }
h2 { font-size: 1.1rem; margin: 1.5rem 0 .75rem; }
.card { background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius); padding: 1.25rem; }
.stack > * + * { margin-top: .75rem; }
label { display: block; font-weight: 600; font-size: .85rem; margin-bottom: .25rem; }
input, select, textarea { width: 100%; padding: .55rem .7rem; border: 1px solid var(--color-line); border-radius: 8px; font: inherit; background: #fff; }
input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible, a:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
button, .button { display: inline-block; padding: .55rem 1rem; border-radius: 8px; border: 1px solid var(--color-accent); background: var(--color-accent); color: #fff; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }
button.secondary, .button.secondary { background: #fff; color: var(--color-accent); }
button.danger { background: var(--color-danger); border-color: var(--color-danger); }
.alert { padding: .75rem 1rem; border-radius: 8px; border: 1px solid var(--color-line); }
.alert.error { background: var(--color-danger-bg); color: var(--color-danger); border-color: #fecdca; }
.alert.success { background: var(--color-success-bg); color: var(--color-success); border-color: #abefc6; }
.alert.warning { background: var(--color-warning-bg); border-color: #fedf89; }
table { width: 100%; border-collapse: collapse; background: var(--color-surface); }
th, td { text-align: left; padding: .6rem .75rem; border-bottom: 1px solid var(--color-line); vertical-align: top; }
th { font-size: .8rem; color: var(--color-muted); text-transform: uppercase; letter-spacing: .03em; }
.muted { color: var(--color-muted); font-size: .85rem; }
.badge { display: inline-block; padding: .1rem .5rem; border-radius: 999px; font-size: .8rem; font-weight: 600; background: var(--color-line); }
.badge.ok { background: var(--color-success-bg); color: var(--color-success); }
.badge.bad { background: var(--color-danger-bg); color: var(--color-danger); }
.table-wrap { overflow-x: auto; border: 1px solid var(--color-line); border-radius: var(--radius); }
code.secret { font-size: 1rem; letter-spacing: .05em; word-break: break-all; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.caption-bottom { caption-side: bottom; padding: .5rem; }
.text-danger { color: var(--color-danger); }
.flush-top { margin-top: 0; }
.form-narrow { max-width: 420px; }
.spaced-top { margin-top: 1.5rem; }
.tabs { display: flex; gap: .5rem; margin-bottom: 1rem; }
.facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .75rem 1.5rem; margin: 0; }
