/* ================================================================
   GBS Umfrage – Lehrer  |  Modern Design  |  Accent: #009ece
   ================================================================ */

*, *::before, *::after { box-sizing: border-box; }

:root {
  --accent:        #009ece;
  --accent-dark:   #007ba8;
  --accent-light:  #e0f4fb;
  --bg:            #f0f4f8;
  --surface:       #ffffff;
  --text:          #1a2332;
  --text-muted:    #5a6a7a;
  --border:        #dde3ea;
  --green:         #27ae60;
  --green-bg:      #eafaf1;
  --green-light:   #5cb85c;
  --green-light-bg:#e8f5e9;
  --green-vlight:  #8bc34a;
  --green-vlight-bg:#f1f8e9;
  --orange-vlight: #ffb74d;
  --orange-vlight-bg:#fff8e1;
  --orange-light:  #f39c12;
  --orange-light-bg:#fef3e0;
  --orange:        #e67e22;
  --orange-bg:     #fdebd0;
  --gray:          #95a5a6;
  --gray-bg:       #ecf0f1;
  --rose:          #c0392b;
  --rose-bg:       #fdecea;
  --shadow-sm:     0 1px 4px rgba(0,0,0,0.08);
  --shadow:        0 2px 12px rgba(0,0,0,0.10);
  --shadow-lg:     0 6px 28px rgba(0,0,0,0.13);
  --radius:        8px;
  --radius-lg:     14px;
}

html { height: 100%; }

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  background-color: var(--bg);
  color: var(--text);
  text-align: center;
  min-height: 100%;
  line-height: 1.55;
  margin: 0;
  padding: 0;
}

td, th {
  font-family: inherit;
  font-size: 14px;
  text-align: center;
  margin: 0;
}

table { margin: auto; border-collapse: collapse; }
p     { text-align: left; margin: 0.6em 0; }
strong { font-weight: 600; color: var(--accent-dark); }

h1, h2, h3, h4 {
  font-weight: 700;
  color: var(--text);
  text-align: center;
  line-height: 1.25;
}
h1 { font-size: 1.9rem; margin: 0.4em 0; }
h2 { font-size: 1.5rem; margin: 0.35em 0; }
h3 { font-size: 1.2rem; margin: 0.3em 0; }
h4 { font-size: 1rem;   margin: 0.3em 0; }

a:link, a:visited { color: var(--accent); text-decoration: underline; }
a:hover, a:active, a:focus { color: var(--accent-dark); }

/* ---- Primary button ---- */
.submit {
  display: inline-block;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  background: var(--accent);
  color: #fff;
  padding: 0.75em 2.5em;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  transition: background 0.2s, transform 0.1s, box-shadow 0.2s;
  box-shadow: 0 4px 16px rgba(0,158,206,0.30);
  letter-spacing: 0.02em;
  text-decoration: none;
}
.submit:hover  { background: var(--accent-dark); transform: translateY(-2px); box-shadow: 0 6px 22px rgba(0,158,206,0.38); }
.submit:active { transform: translateY(0); }

/* ---- Utilities ---- */
.top    { vertical-align: top; }
.left   { text-align: left; }
.right  { text-align: right; }
.middle { vertical-align: middle; }
.nopad  { padding: 0; }