/*
Theme Name: KITUTEC
Theme URI: https://www.kitutec.de
Author: KITUTEC
Description: Individuelles Gutenberg Block-Theme für KITUTEC. Inhalte, Navigation, Farben und Abschnitte lassen sich im WordPress Site Editor bearbeiten.
Version: 2.2.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: kitutec
*/

:root {
  --kitutec-dark: #2f3133;
  --kitutec-mid: #62666a;
  --kitutec-light: #eceeef;
  --kitutec-line: #d8dbdd;
  --kitutec-white: #ffffff;
}

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
.wp-site-blocks { overflow-x: clip; overflow-y: visible; }

.kitutec-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 10000;
  box-sizing: border-box;
  backdrop-filter: blur(14px);
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid rgba(47,49,51,.09);
  box-shadow: 0 8px 24px rgba(20,24,28,.08);
}
body.kitutec-fixed-header-ready .wp-site-blocks {
  padding-top: var(--kitutec-header-height, 82px);
}
.admin-bar .kitutec-header { top: 32px; }

.kitutec-logo img { width: min(270px, 44vw); height: auto; }
.kitutec-nav a { text-decoration: none; }
.kitutec-nav a:hover { color: var(--kitutec-mid); }

.kitutec-hero {
  position: relative;
  background:
    radial-gradient(circle at 72% 20%, rgba(160,164,168,.25), transparent 36%),
    linear-gradient(110deg, #fff 0%, #f7f8f8 48%, #e5e7e8 100%);
}
.kitutec-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .22;
  background-image: repeating-linear-gradient(135deg, transparent 0 18px, rgba(0,0,0,.025) 18px 19px);
}
.kitutec-hero > * { position: relative; }
.kitutec-eyebrow { letter-spacing: .16em; text-transform: uppercase; font-weight: 700; }
.kitutec-gradient-text {
  background: linear-gradient(90deg, #252729, #8d9296);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.kitutec-dashboard {
  border-radius: 22px;
  box-shadow: 0 30px 80px rgba(25,27,29,.22);
  border: 1px solid rgba(255,255,255,.8);
  overflow: hidden;
}
.kitutec-dashboard img { display:block; width:100%; }

.kitutec-button .wp-block-button__link { transition: transform .2s ease, box-shadow .2s ease; }
.kitutec-button .wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(30,32,34,.18); }

.kitutec-feature-grid > .wp-block-column,
.kitutec-step,
.kitutec-usecase {
  border: 1px solid var(--kitutec-line);
  border-radius: 16px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 10px 30px rgba(35,37,39,.045);
  transition: transform .25s ease, box-shadow .25s ease;
}
.kitutec-feature-grid > .wp-block-column:hover,
.kitutec-step:hover,
.kitutec-usecase:hover { transform: translateY(-5px); box-shadow: 0 18px 42px rgba(35,37,39,.10); }

.kitutec-icon {
  width: 54px;
  height: 54px;
  border: 1px solid var(--kitutec-line);
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-size: 25px;
  background: #fafafa;
}

.kitutec-metric {
  border-left: 3px solid #505356;
  padding-left: 18px;
}
.kitutec-dark-section {
  background: linear-gradient(120deg,#202224,#3b3e41);
  color: white;
}
.kitutec-dark-section a { color: white; }

.kitutec-contact-form { display:grid; gap:14px; }
.kitutec-contact-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.kitutec-contact-form label { display:grid; gap:6px; font-weight:600; font-size:.93rem; }
.kitutec-contact-form input,
.kitutec-contact-form textarea {
  width:100%; box-sizing:border-box; border:1px solid #cfd2d4; border-radius:10px; padding:13px 14px;
  font:inherit; background:white;
}
.kitutec-contact-form input:focus,
.kitutec-contact-form textarea:focus { outline:2px solid #73777a; outline-offset:1px; }
.kitutec-contact-form button {
  border:0; border-radius:10px; background:#333638; color:#fff; padding:14px 20px; font-weight:700; cursor:pointer;
}
.kitutec-form-message { padding:12px 14px; border-radius:10px; margin-bottom:15px; }
.kitutec-form-success { background:#eaf5ed; color:#1f5b2e; }
.kitutec-form-error { background:#fff0f0; color:#8a2727; }

.kitutec-reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease, transform .65s ease; }
.kitutec-reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 900px) {
  .kitutec-desktop-nav { display:none !important; }
  .kitutec-contact-form-grid { grid-template-columns:1fr; }
  .kitutec-dashboard { margin-top:20px; }
}
@media (max-width: 782px) {
  .admin-bar .kitutec-header { top:46px; }
}

/* KITUTEC Scanner MVP */
.kitutec-scanner{max-width:1120px;margin:38px auto 0;background:#fff;border:1px solid #d9dde1;border-radius:24px;padding:28px;box-shadow:0 18px 50px rgba(28,32,35,.08)}
.kitutec-scanner-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:28px;align-items:start}
.kitutec-dropzone{border:2px dashed #a7adb2;border-radius:18px;padding:32px;text-align:center;background:#f7f8f8;min-height:310px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.kitutec-dropzone input{max-width:100%}.kitutec-preview{max-width:100%;max-height:230px;border-radius:12px;margin:14px auto;display:none}
.kitutec-scan-button{border:0;border-radius:999px;background:#282c2f;color:#fff;padding:14px 22px;font-weight:700;cursor:pointer}.kitutec-scan-button:disabled{opacity:.45;cursor:not-allowed}
.kitutec-results{border:1px solid #e0e3e5;border-radius:18px;padding:22px;min-height:310px}.kitutec-result-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #eceeef}.kitutec-result-row:last-child{border-bottom:0}.kitutec-confidence{height:8px;background:#e4e7e9;border-radius:99px;overflow:hidden;margin-top:8px}.kitutec-confidence span{display:block;height:100%;background:#555b60}
.kitutec-account-box{max-width:720px;margin:40px auto;padding:28px;border:1px solid #ddd;border-radius:18px;background:#fff}.kitutec-account-box input{width:100%;padding:12px;border:1px solid #cfd3d6;border-radius:10px;margin-top:6px}.kitutec-account-box label{display:block;margin:14px 0}.kitutec-account-box button{padding:12px 20px;border:0;border-radius:999px;background:#282c2f;color:#fff;font-weight:700}
@media(max-width:800px){.kitutec-scanner-grid{grid-template-columns:1fr}.kitutec-scanner{padding:18px}.kitutec-dropzone{min-height:240px}}


@media screen and (max-width: 782px) {
  .admin-bar .kitutec-header { top: 46px; }
}
