/* ==========================================================================
   Onmaro Website · Aura für das Web: viel Raum, große Typo, eine Farbe pro App
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body.s-body { margin: 0; background: var(--o-bg); color: var(--o-text); font: 400 16px/1.55 var(--o-font-text); -webkit-font-smoothing: antialiased; }
a { color: inherit; }
.s-wrap { max-width: 1160px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 32px); }
.s-g { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; vertical-align: middle; }
.s-g .fill { fill: currentColor; stroke: none; }
.s-icon { display: inline-grid; place-items: center; flex: none; } .s-icon svg { width: 100%; height: 100%; }
.hide-m { } .s-sp { flex: 1; }

/* Kopf */
.s-head { position: sticky; top: 0; z-index: 50; background: color-mix(in srgb, var(--o-bg) 78%, transparent); backdrop-filter: saturate(1.6) blur(18px); -webkit-backdrop-filter: saturate(1.6) blur(18px); border-bottom: 1px solid transparent; transition: border-color .2s; }
.s-head.scrolled { border-bottom-color: var(--o-line); }
.s-headin { display: flex; align-items: center; gap: 6px; height: 60px; }
.s-logo { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; font: 700 19px/1 var(--o-font-rounded); letter-spacing: -.035em; margin-right: 18px; }
.s-logo [data-logo] { display: inline-grid; }
.s-nav { display: flex; align-items: center; gap: 2px; }
.s-navl { display: inline-flex; align-items: center; gap: 4px; height: 34px; padding: 0 12px; border: 0; border-radius: 10px; background: none; color: var(--o-text-2); font: 500 14.5px var(--o-font-text); text-decoration: none; cursor: pointer; }
.s-navl:hover { color: var(--o-text); background: var(--o-surface); } .s-navl .s-g { width: 14px; height: 14px; }
.s-dd { position: relative; }
.s-mega { position: absolute; top: calc(100% + 8px); left: -12px; width: min(760px, 92vw); display: none; grid-template-columns: repeat(2, 1fr); gap: 2px; padding: 10px;
  background: var(--o-raised); border-radius: 18px; box-shadow: 0 24px 60px rgba(0,0,0,.35), inset 0 0 0 1px var(--o-line); }
.s-dd.open .s-mega { display: grid; }
.s-mi { display: flex; align-items: center; gap: 12px; padding: 9px 10px; border-radius: 12px; text-decoration: none; }
.s-mi:hover { background: var(--o-surface-2); } .s-mi > span:not(.s-icon) { flex: 1; min-width: 0; line-height: 1.3; } .s-mi b { display: block; font: 600 14px var(--o-font-text); }
.s-mi small { color: var(--o-text-3); font-size: 12.5px; } .s-mi em { font: 600 11px var(--o-font-text); font-style: normal; color: var(--o-green); }
.s-burger { display: none; width: 38px; height: 38px; border: 0; border-radius: 10px; background: none; color: var(--o-text); cursor: pointer; }

/* Knöpfe */
.s-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 46px; padding: 0 22px; border-radius: 99px; border: 0;
  background: var(--o-surface-2); color: var(--o-text); font: 600 15.5px var(--o-font-text); text-decoration: none; cursor: pointer; transition: transform .15s, filter .15s, background .15s; }
.s-btn:hover { transform: translateY(-1px); background: var(--o-surface-3); }
.s-btn.primary { background: var(--o-accent); color: #fff; } .s-btn.primary:hover { filter: brightness(1.08); background: var(--o-accent); }
.s-btn.sm { height: 34px; padding: 0 15px; font-size: 14px; } .s-btn.full { width: 100%; } .s-btn .s-g { width: 16px; height: 16px; }

/* Hero */
.s-hero { position: relative; padding: clamp(56px, 9vw, 110px) 0 clamp(40px, 6vw, 70px); text-align: center; overflow: hidden; }
.s-hero::before { content: ""; position: absolute; inset: -20% -10% auto; height: 620px; z-index: -1; pointer-events: none;
  background: radial-gradient(600px 300px at 50% 30%, color-mix(in srgb, var(--o-accent) 22%, transparent), transparent 70%); }
.s-hero.small { padding-bottom: 20px; }
.s-hero h1 { margin: 18px auto 14px; max-width: 900px; font: 800 clamp(38px, 6.4vw, 72px)/1.03 var(--o-font-display); letter-spacing: -.04em; text-wrap: balance; }
.s-lead { margin: 0 auto; max-width: 680px; font: 400 clamp(17px, 2vw, 21px)/1.5 var(--o-font-text); color: var(--o-text-2); text-wrap: pretty; }
.s-sun { display: inline-grid; } .s-sun svg { width: 120px; height: 120px; }
.s-ctas { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 30px; } .s-ctas.center { margin-top: 26px; }
.s-icons { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin: 54px auto 0; max-width: 760px; }
.s-icons .s-icon { transition: transform .25s; } .s-icons .s-icon:hover { transform: translateY(-4px) scale(1.06); }
.s-kicker { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 16px; font: 650 17px var(--o-font-text); color: var(--o-accent); }
.s-tier { padding: 3px 10px; border-radius: 99px; background: var(--o-surface-2); color: var(--o-text-2); font: 600 12px var(--o-font-text); }
.s-tier.free { background: color-mix(in srgb, var(--o-green) 18%, transparent); color: var(--o-green); }
.s-shot { margin: 56px auto 0; max-width: 1000px; }

/* Abschnitte */
.s-sec { padding: clamp(60px, 8vw, 100px) 0; } .s-sec.tight { padding-top: 30px; } .s-sec.alt { background: var(--o-grouped, var(--o-canvas)); }
.s-h2 { margin: 0 auto 12px; text-align: center; max-width: 820px; font: 800 clamp(30px, 4.2vw, 48px)/1.08 var(--o-font-display); letter-spacing: -.035em; text-wrap: balance; }
.s-h2.left, .s-sub.left { text-align: left; margin-left: 0; }
.s-sub { margin: 0 auto 40px; text-align: center; max-width: 640px; color: var(--o-text-2); font-size: 18px; text-wrap: pretty; }
.s-apps { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.s-app { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 22px; border-radius: 22px; background: var(--o-card, var(--o-surface)); box-shadow: inset 0 0 0 1px var(--o-line);
  text-decoration: none; transition: transform .2s, box-shadow .2s; }
.s-app:hover { transform: translateY(-3px); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--o-accent) 60%, transparent), 0 20px 40px rgba(0,0,0,.18); }
.s-app .s-icon { margin-bottom: 8px; } .s-app b { font: 700 19px var(--o-font-display); letter-spacing: -.01em; } .s-app > span:not(.s-icon) { color: var(--o-text-2); font-size: 15px; }
.s-app em { position: absolute; top: 18px; right: 18px; font: 600 11.5px var(--o-font-text); font-style: normal; color: var(--o-text-3); padding: 3px 9px; border-radius: 99px; background: var(--o-surface-2); }
.s-app em.free { color: var(--o-green); background: color-mix(in srgb, var(--o-green) 16%, transparent); }
.s-split { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(30px, 5vw, 70px); align-items: center; }
.s-checks { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; } .s-checks li { display: flex; gap: 10px; align-items: center; font-size: 16.5px; }
.s-checks .s-g { color: var(--o-green); }
.s-feats { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 28px 36px; }
.s-feat { display: flex; flex-direction: column; gap: 6px; } .s-feat > .s-g { width: 30px; height: 30px; padding: 6px; margin-bottom: 6px; box-sizing: content-box; border-radius: 12px; color: var(--o-accent); background: color-mix(in srgb, var(--o-accent) 14%, transparent); }
.s-feat b { font: 700 18px var(--o-font-display); letter-spacing: -.01em; } .s-feat p { margin: 0; color: var(--o-text-2); }
.s-minis { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.s-mini { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 6px; border-radius: 99px; background: var(--o-card, var(--o-surface)); box-shadow: inset 0 0 0 1px var(--o-line); text-decoration: none; font: 600 14px var(--o-font-text); }
.s-mini:hover { background: var(--o-surface-2); }
.s-next { display: flex; flex-direction: column; align-items: center; gap: 22px; } .s-nextapp { color: var(--o-text-2); text-decoration: none; display: inline-flex; gap: 6px; align-items: center; } .s-nextapp:hover { color: var(--o-text); }
.s-faqw { max-width: 780px; }
.s-faq { border-bottom: 1px solid var(--o-line); } .s-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 20px 0; cursor: pointer; list-style: none; font: 600 17px var(--o-font-text); }
.s-faq summary::-webkit-details-marker { display: none; } .s-faq summary .s-g { transition: transform .2s; color: var(--o-text-3); } .s-faq[open] summary .s-g { transform: rotate(45deg); }
.s-faq p { margin: -6px 0 20px; color: var(--o-text-2); }

/* Preise */
.s-prices { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.s-price { position: relative; display: flex; flex-direction: column; gap: 18px; padding: 26px; border-radius: 24px; background: var(--o-card, var(--o-surface)); box-shadow: inset 0 0 0 1px var(--o-line); }
.s-price.best { box-shadow: inset 0 0 0 2px var(--o-accent), 0 30px 60px rgba(0,0,0,.2); }
.s-price h3 { margin: 0; font: 700 22px var(--o-font-display); } .s-price p { margin: 4px 0 0; color: var(--o-text-2); }
.s-amount { margin-top: 16px; } .s-amount b { font: 800 44px/1 var(--o-font-display); letter-spacing: -.03em; } .s-amount small { display: block; margin-top: 6px; color: var(--o-text-3); font-size: 13.5px; }
.s-price ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; } .s-price li { display: flex; gap: 9px; align-items: flex-start; font-size: 15px; } .s-price li .s-g { color: var(--o-green); margin-top: 2px; }
.s-badge { position: absolute; top: 18px; right: 18px; padding: 4px 10px; border-radius: 99px; background: var(--o-accent); color: #fff; font: 700 11.5px var(--o-font-text); }
.s-note { text-align: center; margin-top: 22px; color: var(--o-text-3); font-size: 14px; }
.s-tablew { overflow-x: auto; } .s-table { width: 100%; max-width: 760px; margin: 0 auto; border-collapse: collapse; font-size: 15px; }
.s-table th { padding: 12px; font: 700 14px var(--o-font-text); } .s-table td { padding: 10px 12px; border-top: 1px solid var(--o-line); text-align: center; color: var(--o-text-3); }
.s-table td:first-child { text-align: left; display: flex; align-items: center; gap: 10px; color: var(--o-text); } .s-table td .s-g { color: var(--o-green); }

/* Anmelden */
.s-auth { min-height: calc(100vh - 60px); display: grid; place-items: center; padding: 50px 16px; }
.s-authbox { width: min(400px, 100%); text-align: center; } .s-authbox [data-logo] { display: inline-grid; }
.s-authbox h1 { margin: 16px 0 6px; font: 800 30px var(--o-font-display); letter-spacing: -.03em; } .s-authbox .s-sub { margin-bottom: 26px; font-size: 16px; }
.s-form { display: flex; flex-direction: column; gap: 14px; text-align: left; } .s-form label span { display: block; margin-bottom: 6px; font: 600 13px var(--o-font-text); color: var(--o-text-2); }
.s-form input { width: 100%; height: 48px; padding: 0 14px; border-radius: 14px; border: 0; background: var(--o-surface-2); color: var(--o-text); font: 16px var(--o-font-text); outline: none; box-shadow: inset 0 0 0 1px var(--o-line); }
.s-form input:focus { box-shadow: inset 0 0 0 2px var(--o-accent); }
.s-msg { min-height: 20px; margin: 0; color: var(--o-text-2); font-size: 14.5px; text-align: center; } .s-msg a { color: var(--o-accent); font-weight: 600; }
.s-alt { margin-top: 22px; color: var(--o-text-3); font-size: 14.5px; } .s-alt a { color: var(--o-accent); font-weight: 600; text-decoration: none; }
.s-legal { max-width: 760px; } .s-legal h1 { font: 800 40px var(--o-font-display); letter-spacing: -.03em; } .s-warn { padding: 10px 14px; border-radius: 12px; background: color-mix(in srgb, var(--o-orange) 16%, transparent); color: var(--o-orange); font-weight: 600; }

/* Fuß */
.s-foot { padding: 56px 0 30px; border-top: 1px solid var(--o-line); background: var(--o-canvas); font-size: 14px; }
.s-footgrid { display: grid; grid-template-columns: 1.2fr 2fr 1fr 1fr; gap: 30px; } .s-footgrid b { display: block; margin-bottom: 10px; font: 650 13px var(--o-font-text); }
.s-footgrid a:not(.s-logo) { display: block; padding: 3px 0; color: var(--o-text-2); text-decoration: none; } .s-footgrid a:not(.s-logo):hover { color: var(--o-text); }
.s-footgrid p { color: var(--o-text-3); margin: 12px 0 0; } .s-footapps { columns: 2; }
.s-footline { display: flex; justify-content: space-between; margin-top: 40px; padding-top: 18px; border-top: 1px solid var(--o-line); color: var(--o-text-3); }
.s-theme { border: 0; background: none; color: var(--o-text-3); font: inherit; cursor: pointer; } .s-theme:hover { color: var(--o-text); }

/* Einblenden */
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; } .reveal.in { opacity: 1; transform: none; }

/* ---------- Vorschau-Fenster (Mockups) ---------- */
.m-win { border-radius: 18px; overflow: hidden; background: var(--o-canvas); box-shadow: 0 40px 90px rgba(0,0,0,.35), inset 0 0 0 1px var(--o-line); text-align: left; }
.m-bar { display: flex; align-items: center; gap: 7px; height: 34px; padding: 0 14px; border-bottom: 1px solid var(--o-line); } .m-bar i { width: 11px; height: 11px; border-radius: 50%; background: var(--o-surface-3); }
.m-bar i:nth-child(1) { background: #FF5F57; } .m-bar i:nth-child(2) { background: #FEBC2E; } .m-bar i:nth-child(3) { background: #28C840; }
.m-bar span { margin: 0 auto; font: 600 12px var(--o-font-text); color: var(--o-text-3); transform: translateX(-24px); }
.m-body { display: flex; height: clamp(280px, 40vw, 440px); }
.m-side { width: 22%; min-width: 120px; padding: 14px 12px; display: flex; flex-direction: column; gap: 8px; } .m-side > b { display: none; }
.m-nav { height: 22px; border-radius: 7px; background: var(--o-surface); } .m-nav.on { background: var(--o-accent); opacity: .85; }
.m-list { width: 32%; padding: 10px; background: var(--o-bg); border-right: 1px solid var(--o-line); display: flex; flex-direction: column; gap: 4px; overflow: hidden; }
.m-list.wide { width: 36%; }
.m-row { display: flex; align-items: center; gap: 9px; padding: 8px; border-radius: 10px; } .m-row:first-child { background: color-mix(in srgb, var(--o-accent) 22%, transparent); }
.m-av { width: 26px; height: 26px; border-radius: 50%; flex: none; background: hsl(var(--h) 55% 55%); }
.m-l { flex: 1; display: flex; flex-direction: column; gap: 5px; } .m-l b { height: 8px; border-radius: 4px; background: var(--o-text-3); opacity: .7; } .m-l i { height: 6px; border-radius: 4px; background: var(--o-surface-3); }
.m-row em { width: 22px; height: 6px; border-radius: 4px; background: var(--o-surface-3); }
.m-read, .m-doc { flex: 1; padding: 22px; background: var(--o-bg); display: flex; flex-direction: column; gap: 10px; overflow: hidden; }
.m-h { display: block; width: 55%; height: 16px; border-radius: 6px; background: var(--o-text); opacity: .75; margin-bottom: 8px; } .m-h.big { height: 22px; width: 45%; }
.m-t { display: block; height: 8px; border-radius: 4px; background: var(--o-surface-3); } .m-t.sm { height: 6px; }
.w30 { width: 30%; } .w40 { width: 40%; } .w50 { width: 50%; } .w60 { width: 60%; } .w70 { width: 70%; } .w75 { width: 75%; } .w80 { width: 80%; } .w90 { width: 90%; } .w95 { width: 95%; }
.m-cal { flex: 1; display: grid; grid-template-columns: repeat(5, 1fr); background: var(--o-bg); }
.m-day { position: relative; border-left: 1px solid var(--o-line); padding-top: 26px; background: repeating-linear-gradient(to bottom, transparent 0 39px, var(--o-line) 39px 40px); }
.m-day small { position: absolute; top: 6px; left: 8px; font: 600 11px var(--o-font-text); color: var(--o-text-3); }
.m-ev { position: absolute; left: 6px; right: 6px; border-radius: 7px; background: color-mix(in srgb, var(--c) 30%, transparent); border-left: 3px solid var(--c); }
.m-wave { display: flex; align-items: center; gap: 3px; height: 70px; margin: 6px 0 10px; } .m-wave i { flex: 1; border-radius: 3px; background: var(--o-accent); opacity: .8; }
.m-chip { align-self: flex-start; padding: 6px 12px; border-radius: 10px; background: color-mix(in srgb, var(--o-green) 16%, transparent); color: var(--o-green); font: 600 12.5px var(--o-font-text); }
.m-dash { flex: 1; padding: 26px; background: var(--o-bg); display: flex; flex-direction: column; gap: 10px; }
.m-hello { font: 800 26px var(--o-font-display); letter-spacing: -.03em; }
.m-cards { flex: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 10px; }
.m-card { padding: 14px; border-radius: 14px; background: var(--o-card, var(--o-surface)); box-shadow: inset 0 0 0 1px var(--o-line); display: flex; flex-direction: column; gap: 8px; }
.m-card > b { width: 40%; height: 10px; border-radius: 5px; background: var(--o-accent); opacity: .8; } .m-card.wide { grid-column: span 2; }
.m-spark { flex: 1; display: flex; align-items: flex-end; gap: 4px; } .m-spark i { flex: 1; border-radius: 3px; background: color-mix(in srgb, var(--o-green) 55%, transparent); }
.m-todo { display: flex; align-items: center; gap: 8px; } .m-todo span { width: 14px; height: 14px; border-radius: 4px; box-shadow: inset 0 0 0 1.5px var(--o-text-3); } .m-todo.on span { background: var(--o-accent); box-shadow: none; }
.m-todo .m-t { flex: none; } .m-tbl { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: 8px; border-radius: 10px; overflow: hidden; background: var(--o-line); }
.m-tbl span { height: 26px; background: var(--o-bg); } .m-tbl span:nth-child(-n+4) { background: var(--o-surface); }
.m-grid { flex: 1; padding: 20px; background: var(--o-bg); display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; align-content: start; }
.m-file { aspect-ratio: 1; border-radius: 14px; background: linear-gradient(140deg, hsl(var(--h) 60% 62%), hsl(calc(var(--h) + 40) 55% 45%)); opacity: .85; }
.m-chat { flex: 1; padding: 18px; background: var(--o-bg); display: flex; flex-direction: column; gap: 10px; justify-content: flex-end; }
.m-bub { height: 30px; border-radius: 16px 16px 16px 4px; background: var(--o-surface-2); } .m-bub.me { align-self: flex-end; border-radius: 16px 16px 4px 16px; background: var(--o-accent); opacity: .85; }
.m-input { height: 36px; border-radius: 18px; background: var(--o-surface); margin-top: 6px; }
.m-video { position: relative; flex: 1; padding: 14px; background: #111; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.m-tile { position: relative; border-radius: 14px; background: radial-gradient(circle at 50% 42%, hsl(var(--h) 50% 55%) 0 18%, hsl(var(--h) 25% 22%) 19%); }
.m-tile b { position: absolute; left: 10px; bottom: 10px; width: 60px; height: 8px; border-radius: 4px; background: rgba(255,255,255,.5); }
.m-ctrl { position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%); display: flex; gap: 10px; padding: 8px 12px; border-radius: 99px; background: rgba(40,40,44,.85); }
.m-ctrl i { width: 32px; height: 32px; border-radius: 50%; background: rgba(255,255,255,.18); } .m-ctrl i.red { background: #FF453A; }
.m-pipe { flex: 1; padding: 16px; background: var(--o-bg); display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.m-col { display: flex; flex-direction: column; gap: 8px; padding: 8px; border-radius: 12px; background: var(--o-surface); } .m-col small { height: 8px; width: 60%; border-radius: 4px; background: var(--o-text-3); opacity: .6; margin-bottom: 4px; }
.m-deal { display: flex; flex-direction: column; gap: 6px; padding: 10px; border-radius: 10px; background: var(--o-card, var(--o-bg)); box-shadow: inset 0 0 0 1px var(--o-line); }
.m-deal b { height: 7px; border-radius: 4px; background: var(--o-text-3); } .m-deal i { width: 40%; height: 7px; border-radius: 4px; background: var(--o-accent); opacity: .8; }
.m-seq { flex: 1; padding: 24px; background: var(--o-bg); display: flex; flex-direction: column; gap: 14px; }
.m-step { display: flex; align-items: center; gap: 14px; padding: 14px; border-radius: 14px; background: var(--o-card, var(--o-surface)); box-shadow: inset 0 0 0 1px var(--o-line); }
.m-step > span { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--o-accent); color: #fff; font: 700 13px var(--o-font-text); }
.m-step > div { flex: 1; display: flex; flex-direction: column; gap: 6px; } .m-step b { width: 35%; height: 9px; border-radius: 4px; background: var(--o-text-3); }
.m-step em { font: 600 12px var(--o-font-text); font-style: normal; color: var(--o-text-3); }
.m-inv { flex: 1; padding: 22px; background: var(--o-surface); display: grid; place-items: center; }
.m-paper { width: min(320px, 90%); height: 100%; padding: 22px; border-radius: 6px; background: #fff; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 10px 30px rgba(0,0,0,.2); }
.m-paper .m-h { background: #1d1d1f; } .m-paper .m-t { background: #e2e2e6; }
.m-lines { display: flex; flex-direction: column; gap: 8px; margin: 14px 0; } .m-lines span { display: flex; justify-content: space-between; } .m-lines i { height: 7px; width: 45%; border-radius: 4px; background: #e2e2e6; } .m-lines i + i { width: 15%; }
.m-total { display: flex; justify-content: flex-end; gap: 10px; margin-bottom: auto; } .m-total i { width: 20%; height: 9px; border-radius: 4px; background: #c7c7cc; } .m-total b { width: 22%; height: 11px; border-radius: 4px; background: var(--o-green); }
.m-vh { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; } .m-vh .m-h { margin: 0; width: 40%; }
.m-field { display: flex; flex-direction: column; gap: 6px; padding: 10px 0; border-bottom: 1px solid var(--o-line); } .m-field small { width: 25%; height: 6px; border-radius: 3px; background: var(--o-text-3); opacity: .6; }
.m-field > i { font: 600 15px ui-monospace, Menlo, monospace; font-style: normal; letter-spacing: .1em; color: var(--o-text-2); } .m-otp { color: var(--o-accent) !important; font-size: 20px !important; }
.m-meter { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; margin-top: 6px; } .m-meter i { height: 5px; border-radius: 3px; background: var(--o-green); }

/* ---------- Schmal ---------- */
@media (max-width: 860px) {
  .s-nav { display: none; position: absolute; top: 60px; left: 0; right: 0; flex-direction: column; align-items: stretch; padding: 10px 16px 18px; background: var(--o-bg); border-bottom: 1px solid var(--o-line); }
  body.nav-open .s-nav { display: flex; } .s-burger { display: grid; place-items: center; } .hide-m { display: none; }
  .s-mega { position: static; width: auto; grid-template-columns: 1fr; box-shadow: none; padding: 0; background: none; }
  .s-split, .s-prices { grid-template-columns: 1fr; } .s-footgrid { grid-template-columns: 1fr 1fr; }
  .m-side { display: none; } .m-list { width: 42%; } .m-cards { grid-template-columns: 1fr 1fr; } .m-pipe { grid-template-columns: repeat(3, 1fr); } .m-col:nth-child(n+4) { display: none; }
  .m-cal { grid-template-columns: repeat(3, 1fr); } .m-day:nth-child(n+4) { display: none; }
}
@media (max-width: 520px) { .s-headin .s-btn.sm { display: none; } .m-list { display: none; } .s-footgrid { grid-template-columns: 1fr; } }
