/*
Theme Name: Alarm Lock
Theme URI: https://alarmlock.derkeusman.com/
Author: Derk Eusman
Description: A responsive landing-page theme for Alarm Lock, including WordPress-native beta signup storage.
Version: 1.5.2
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alarm-lock
*/

:root { --midnight:#101820; --deep:#0b1218; --slate:#1b2832; --lavender:#a99af4; --mint:#61e6b5; --white:#f4f7f6; --secondary:#aab8bd; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--white); background:var(--midnight); font-family:Arial,Helvetica,sans-serif; }
body.admin-bar .nav { margin-top:32px; }
main { overflow:hidden; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.nav { height:92px; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:10; }
.brand { display:flex; align-items:center; gap:12px; font-size:18px; font-weight:750; letter-spacing:-.02em; }
.brand img { width:42px; height:42px; border-radius:11px; box-shadow:0 8px 28px rgba(169,154,244,.2); }
.navLinks { display:flex; gap:32px; color:var(--secondary); font-size:14px; font-weight:700; }
.navLinks a:hover { color:var(--white); }
.navCta { display:inline-flex; align-items:center; justify-content:center; text-align:center; border:1px solid rgba(169,154,244,.42); padding:12px 20px; border-radius:999px; color:var(--lavender); font-weight:700; transition:.2s ease; }
.navCta:hover { background:rgba(169,154,244,.1); transform:translateY(-1px); }
.navGroup { display:flex; align-items:center; gap:24px; }
.language { font-size:14px; font-weight:700; color:var(--secondary); }
.language a { color:var(--secondary); }
.language a:hover { color:var(--white); }
.language strong { color:var(--white); }
.hero { min-height:calc(100vh - 92px); display:grid; grid-template-columns:1.04fr .96fr; align-items:center; gap:70px; padding-block:55px 100px; position:relative; }
.hero::before { content:""; position:absolute; width:800px; height:800px; right:-220px; top:-140px; border-radius:50%; background:radial-gradient(circle,rgba(169,154,244,.14),transparent 64%); pointer-events:none; }
.heroCopy { position:relative; z-index:2; }
.eyebrow { display:inline-flex; align-items:center; gap:10px; color:var(--secondary); text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:800; }
.eyebrow span { width:8px; height:8px; background:var(--mint); border-radius:50%; box-shadow:0 0 18px var(--mint); }
h1 { max-width:700px; margin:25px 0 24px; font-size:clamp(54px,6.5vw,88px); line-height:.97; letter-spacing:-.065em; font-weight:800; }
h1 em { color:var(--lavender); font-style:normal; }
.heroCopy>p { max-width:610px; margin:0; color:var(--secondary); font-size:20px; line-height:1.65; letter-spacing:-.01em; }
.heroActions { display:flex; align-items:center; gap:28px; margin-top:38px; }
.primaryButton { display:inline-flex; align-items:center; justify-content:center; color:#101820; background:var(--lavender); border-radius:17px; padding:18px 30px; font-weight:800; text-align:center; box-shadow:0 16px 40px rgba(169,154,244,.2); transition:.2s ease; }
.primaryButton:hover { transform:translateY(-2px); filter:brightness(1.06); }
.arrowGlyph { position:relative; display:inline-block; flex:0 0 24px; width:24px; height:24px; color:currentColor; }
.arrowGlyph::before,.arrowGlyph::after { content:""; position:absolute; display:block; }
.rightArrow::before { left:1px; top:10px; width:17px; height:4px; border-radius:999px; background:currentColor; }
.rightArrow::after { right:1px; top:5px; width:11px; height:11px; border-right:4px solid currentColor; border-bottom:4px solid currentColor; border-radius:2px; transform:rotate(-45deg); }
.downArrow::before { left:10px; top:1px; width:4px; height:17px; border-radius:999px; background:currentColor; }
.downArrow::after { left:5px; bottom:1px; width:11px; height:11px; border-right:4px solid currentColor; border-bottom:4px solid currentColor; border-radius:2px; transform:rotate(45deg); }
.textLink { color:var(--white); font-weight:700; }
.textLink .arrowGlyph { color:var(--lavender); margin-left:7px; vertical-align:middle; }
.trustRow { display:flex; gap:24px; margin-top:32px; color:var(--secondary); font-size:13px; }
.trustRow span { display:flex; align-items:center; gap:8px; }
.trustRow i { display:block; width:9px; height:9px; border-radius:50%; background:var(--mint); }
.heroVisual { min-height:700px; position:relative; display:grid; place-items:center; }
.halo { position:absolute; border:1px solid rgba(169,154,244,.2); border-radius:50%; }
.haloOne { width:560px; height:560px; }
.haloTwo { width:430px; height:430px; border-color:rgba(97,230,181,.12); }
.phone { position:relative; width:304px; padding:10px; border:1px solid rgba(244,247,246,.2); border-radius:52px; background:#060b0f; box-shadow:0 42px 100px rgba(0,0,0,.5),0 0 60px rgba(169,154,244,.09); transform:rotate(3deg); overflow:hidden; }
.phone::after { content:""; position:absolute; inset:10px; border-radius:43px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); pointer-events:none; }
.phone img { display:block; width:100%; border-radius:42px; }
.phoneSpeaker { position:absolute; z-index:2; width:85px; height:22px; border-radius:999px; background:#05080a; top:20px; left:50%; transform:translateX(-50%); }
.floatCard { position:absolute; display:flex; align-items:center; gap:12px; padding:14px 17px; border:1px solid rgba(244,247,246,.1); border-radius:17px; background:rgba(27,40,50,.95); box-shadow:0 20px 45px rgba(0,0,0,.34); backdrop-filter:blur(12px); }
.floatCard b,.floatCard small { display:block; }
.floatCard b { font-size:14px; }
.floatCard small { margin-top:4px; color:var(--secondary); font-size:11px; }
.floatTag { left:0; top:24%; transform:rotate(-4deg); }
.floatSuccess { right:-12px; bottom:22%; transform:rotate(3deg); }
.nfcMark,.check { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:rgba(169,154,244,.16); color:var(--lavender); font-size:13px; font-weight:900; }
.nfcMark,.nfcIcon { position:relative; }
.nfcMark i,.nfcIcon i { position:absolute; left:8%; top:50%; aspect-ratio:.75; border:3px solid transparent; border-right-color:currentColor; border-radius:50%; transform:translateY(-50%); }
.nfcMark i:nth-child(1),.nfcIcon i:nth-child(1) { width:35%; }
.nfcMark i:nth-child(2),.nfcIcon i:nth-child(2) { width:53%; }
.nfcMark i:nth-child(3),.nfcIcon i:nth-child(3) { width:71%; }
.nfcMark b,.nfcIcon b { position:absolute; left:18%; top:50%; width:8%; height:8%; border-radius:999px; background:currentColor; transform:translateY(-50%); }
.nfcMark i { border-width:2px; }
.check { background:var(--mint); color:var(--midnight); letter-spacing:0; font-size:18px; border-radius:50%; }
.signalStrip { border-block:1px solid rgba(244,247,246,.08); background:rgba(7,12,16,.25); }
.signalInner { min-height:112px; display:grid; grid-template-columns:repeat(4,1fr); align-items:center; }
.signalInner>span { display:flex; flex-direction:column; align-items:center; gap:6px; padding:10px 20px; border-right:1px solid rgba(244,247,246,.08); }
.signalInner>span:last-child { border-right:0; }
.signalInner b { font-size:19px; }
.signalInner small { color:var(--secondary); font-size:12px; }
.section { padding-block:130px; }
.sectionHeading { max-width:760px; }
.centered { margin-inline:auto; text-align:center; }
.kicker { display:inline-block; color:var(--lavender); text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:900; }
.mintKicker { color:var(--mint); }
.section h2 { margin:17px 0 20px; font-size:clamp(42px,5vw,67px); line-height:1.02; letter-spacing:-.055em; }
.sectionHeading>p,.splitHeading>p { color:var(--secondary); font-size:18px; line-height:1.65; }
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.stepCard { position:relative; min-height:360px; padding:36px; border:1px solid rgba(244,247,246,.07); border-radius:28px; background:var(--slate); overflow:hidden; transition:.25s ease; }
.stepCard:hover { transform:translateY(-5px); border-color:rgba(169,154,244,.35); }
.featuredStep { background:linear-gradient(150deg,rgba(169,154,244,.16),transparent 60%),var(--slate); }
.stepNumber { position:absolute; top:28px; right:30px; color:rgba(244,247,246,.16); font-size:34px; font-weight:800; }
.stepIcon { display:grid; place-items:center; width:68px; height:68px; border-radius:21px; background:rgba(169,154,244,.14); color:var(--lavender); font-size:31px; font-weight:900; }
.nfcIcon { font-size:21px; }
.alarmIcon { position:relative; }
.alarmFace { position:absolute; left:17px; top:19px; width:34px; height:34px; border:3px solid currentColor; border-radius:50%; }
.alarmFace i { position:absolute; left:14px; top:7px; width:3px; height:11px; border-radius:3px; background:currentColor; }
.alarmFace b { position:absolute; left:14px; top:15px; width:9px; height:3px; border-radius:3px; background:currentColor; transform:rotate(24deg); transform-origin:left center; }
.alarmBell { position:absolute; top:13px; width:16px; height:9px; border:3px solid currentColor; border-bottom:0; border-radius:13px 13px 0 0; }
.bellLeft { left:13px; transform:rotate(-34deg); }
.bellRight { right:13px; transform:rotate(34deg); }
.alarmFoot { position:absolute; bottom:11px; width:8px; height:3px; border-radius:3px; background:currentColor; }
.footLeft { left:17px; transform:rotate(-38deg); }
.footRight { right:17px; transform:rotate(38deg); }
.walkIcon { color:var(--midnight); background:var(--mint); }
.exclamationMark { color:var(--midnight); font-size:45px; font-weight:950; line-height:1; transform:translateY(-1px); }
.stepCard h3 { margin:40px 0 12px; font-size:25px; letter-spacing:-.035em; }
.stepCard p { color:var(--secondary); line-height:1.65; }
.stepCard>small { position:absolute; left:36px; bottom:34px; color:rgba(170,184,189,.63); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.difference { background:var(--deep); }
.differenceGrid { display:grid; grid-template-columns:1fr .9fr; gap:85px; align-items:center; }
.differenceCopy>p { max-width:570px; color:var(--secondary); font-size:18px; line-height:1.7; }
.differenceCopy ul { display:grid; gap:22px; padding:0; margin:42px 0 0; list-style:none; }
.differenceCopy li { display:flex; align-items:flex-start; gap:15px; }
.differenceCopy li>span { display:block; flex:0 0 10px; width:10px; height:10px; margin-top:8px; border-radius:50%; background:var(--mint); }
.differenceCopy li b,.differenceCopy li small { display:block; }
.differenceCopy li b { margin-top:2px; }
.differenceCopy li small { max-width:480px; margin-top:6px; color:var(--secondary); line-height:1.5; font-size:14px; }
.challengeCard { padding:34px; border:1px solid rgba(169,154,244,.22); border-radius:32px; background:radial-gradient(circle at 50% 30%,rgba(169,154,244,.18),transparent 45%),var(--slate); box-shadow:0 30px 90px rgba(0,0,0,.3); }
.challengeTop { display:flex; align-items:center; justify-content:space-between; color:var(--secondary); font-size:13px; }
.challengeTop i { color:var(--lavender); padding:8px 12px; border-radius:999px; background:rgba(169,154,244,.12); font-style:normal; font-size:11px; font-weight:700; }
.challengeVisual { display:flex; align-items:center; justify-content:center; min-height:230px; }
.holdRing { display:grid; place-items:center; align-content:center; width:125px; height:125px; border:8px solid var(--lavender); border-right-color:rgba(169,154,244,.16); border-radius:50%; box-shadow:0 0 35px rgba(169,154,244,.14); }
.holdRing b { font-size:38px; line-height:1; }
.holdRing small { margin-top:4px; color:var(--secondary); }
.connector { width:55px; border-top:2px solid rgba(169,154,244,.55); }
.mathBubble { display:grid; place-items:center; align-content:center; width:125px; height:125px; border:2px solid var(--lavender); border-radius:50%; color:var(--lavender); text-align:center; font-size:21px; line-height:1.2; background:var(--midnight); }
.challengeCard h3 { font-size:26px; line-height:1.18; letter-spacing:-.03em; }
.challengeCard>p { color:var(--secondary); line-height:1.6; }
.splitHeading { max-width:none; display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:90px; }
.splitHeading h2 { margin-bottom:0; }
.screens { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; align-items:start; margin-top:70px; }
.screenCard { position:relative; margin:0; padding:20px 12px 0; border:1px solid rgba(244,247,246,.08); border-radius:30px; background:var(--slate); overflow:hidden; }
.screenRaised { margin-top:70px; background:linear-gradient(160deg,rgba(169,154,244,.12),transparent 45%),var(--slate); }
.screenLabel { display:flex; align-items:center; gap:13px; margin-bottom:22px; }
.screenLabel>span { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:var(--midnight); background:var(--lavender); font-size:12px; font-weight:900; }
.screenLabel b,.screenLabel small { display:block; }
.screenLabel b { font-size:14px; }
.screenLabel small { margin-top:4px; color:var(--secondary); font-size:11px; }
.screenCard>img { display:block; width:100%; border-radius:32px 32px 0 0; box-shadow:0 0 0 7px #060b0f,0 25px 45px rgba(0,0,0,.35); }
.privacySection { padding-top:30px; }
.privacyCard { display:grid; grid-template-columns:auto 1fr .75fr; gap:38px; align-items:center; padding:54px; border:1px solid rgba(97,230,181,.25); border-radius:34px; background:radial-gradient(circle at 0 50%,rgba(97,230,181,.16),transparent 25%),var(--slate); }
.privacyMark { display:grid; place-items:center; width:82px; height:82px; border-radius:25px; color:var(--midnight); background:var(--mint); }
.shieldIcon { position:relative; display:block; width:42px; height:48px; background:var(--midnight); clip-path:polygon(50% 0,100% 17%,92% 69%,50% 100%,8% 69%,0 17%); }
.shieldIcon::after { content:""; position:absolute; inset:4px; background:var(--mint); clip-path:polygon(50% 0,100% 17%,92% 69%,50% 100%,8% 69%,0 17%); }
.privacyCard h2 { margin:13px 0; font-size:clamp(35px,4vw,55px); }
.privacyCard p { margin:0; color:var(--secondary); line-height:1.65; }
.privacyFacts { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.privacyFacts span { padding:17px 8px; border-radius:16px; background:rgba(16,24,32,.55); text-align:center; }
.privacyFacts b,.privacyFacts small { display:block; }
.privacyFacts b { color:var(--mint); font-size:13px; }
.privacyFacts small { margin-top:5px; color:var(--secondary); font-size:10px; }
.compactHeading { max-width:700px; }
.faqList { max-width:860px; margin:60px auto 0; border-top:1px solid rgba(244,247,246,.1); }
.faqList details { border-bottom:1px solid rgba(244,247,246,.1); }
.faqList summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:26px 6px; cursor:pointer; list-style:none; font-size:19px; font-weight:750; }
.faqList summary::-webkit-details-marker { display:none; }
.faqList summary span { color:var(--lavender); font-size:25px; font-weight:400; transition:.2s ease; }
.faqList details[open] summary span { transform:rotate(45deg); }
.faqList details p { max-width:760px; margin:-8px 0 26px 6px; color:var(--secondary); line-height:1.65; }
.betaSection { position:relative; background:linear-gradient(140deg,rgba(169,154,244,.16),transparent 42%),var(--deep); }
.betaGrid { display:grid; grid-template-columns:.9fr 1.1fr; gap:85px; align-items:center; }
.betaCopy>p { max-width:520px; color:var(--secondary); font-size:18px; line-height:1.7; }
.betaNote { display:flex; gap:14px; max-width:510px; margin-top:34px; padding:18px; border:1px solid rgba(97,230,181,.16); border-radius:17px; background:rgba(97,230,181,.06); }
.betaNote>span { color:var(--mint); }
.betaNote p { margin:0; color:var(--secondary); font-size:13px; line-height:1.55; }
.betaNote b { color:var(--white); }
.betaForm { display:grid; gap:18px; padding:38px; border:1px solid rgba(244,247,246,.1); border-radius:30px; background:var(--slate); box-shadow:0 35px 90px rgba(0,0,0,.28); }
.formRow { display:grid; grid-template-columns:.8fr 1.2fr; gap:14px; }
.betaForm label { display:grid; gap:8px; color:var(--white); font-size:13px; font-weight:700; }
.betaForm label small { color:var(--secondary); font-weight:400; }
.betaForm input:not([type="checkbox"]),.betaForm select { width:100%; height:54px; padding:0 15px; border:1px solid rgba(244,247,246,.12); border-radius:13px; outline:none; color:var(--white); background:var(--midnight); }
.betaForm input:focus,.betaForm select:focus { border-color:var(--lavender); box-shadow:0 0 0 3px rgba(169,154,244,.1); }
.consent { display:flex!important; grid-template-columns:18px 1fr; align-items:flex-start; gap:11px!important; color:var(--secondary)!important; font-weight:400!important; line-height:1.45; }
.consent input { margin-top:2px; accent-color:var(--lavender); }
.formButton { display:flex; align-items:center; justify-content:center; height:58px; padding-inline:20px; border:0; border-radius:15px; color:var(--midnight); background:var(--lavender); cursor:pointer; font-weight:850; text-align:center; transition:.2s ease; }
.formButton:hover { filter:brightness(1.06); transform:translateY(-1px); }
.formButton:disabled { opacity:.7; cursor:wait; }
.formButton .arrowGlyph { color:var(--midnight); }
.formMessage { margin:-5px 0 0; padding:12px 14px; border-radius:11px; font-size:13px; }
.formMessage.success { color:var(--mint); background:rgba(97,230,181,.08); }
.formMessage.error { color:#ff8c8c; background:rgba(255,93,93,.08); }
.formFinePrint { color:rgba(170,184,189,.68); line-height:1.5; }
.honeypot { position:absolute!important; left:-10000px; }
.footer { min-height:130px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.footer p,.footer>a:last-child { color:var(--secondary); font-size:13px; }
.blogHeader { padding-top:55px; padding-bottom:0; }
.postGrid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:64px; }
.postCard { position:relative; display:block; padding:32px; border:1px solid rgba(244,247,246,.07); border-radius:28px; background:var(--slate); transition:.25s ease; }
.postCard:hover { transform:translateY(-5px); border-color:rgba(169,154,244,.35); }
.langBadge { display:inline-block; padding:4px 10px; border-radius:999px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.langBadge.langEn { background:rgba(169,154,244,.16); color:var(--lavender); }
.langBadge.langNl { background:rgba(97,230,181,.16); color:var(--mint); }
.postCard h2 { margin:16px 0 10px; font-size:26px; line-height:1.15; letter-spacing:-.02em; }
.postCard p { color:var(--secondary); font-size:15px; line-height:1.6; margin:0 0 18px; }
.postMeta { color:var(--secondary); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.postArticle { padding-top:55px; padding-bottom:130px; }
.postArticleHeader { max-width:760px; margin-inline:auto; text-align:center; }
.postArticleHeader h1 { margin:16px 0 20px; font-size:clamp(38px,5vw,58px); line-height:1.05; letter-spacing:-.04em; }
.postContent { max-width:720px; margin:60px auto 0; color:var(--secondary); font-size:18px; line-height:1.75; }
.postContent p { margin:0 0 26px; }
.postContent h2 { color:var(--white); font-size:30px; letter-spacing:-.03em; margin:48px 0 18px; }
.postContent h3 { color:var(--white); font-size:23px; letter-spacing:-.02em; margin:36px 0 14px; }
.postContent a { color:var(--lavender); text-decoration:underline; }
.postContent ul,.postContent ol { padding-left:22px; margin:0 0 26px; }
.postContent em { color:var(--white); font-style:normal; }
.backToBlog { display:inline-block; margin-top:50px; color:var(--white); font-weight:700; }
@media(max-width:720px){.postGrid{grid-template-columns:1fr}}
.signupPage { min-height:100vh; display:flex; flex-direction:column; }
.signupNav { padding-block:28px; }
.signupMain { flex:1; display:grid; place-items:center; padding-block:40px 80px; position:relative; overflow:hidden; }
.signupMain .halo { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); }
.signupCard { position:relative; z-index:1; width:min(460px,calc(100% - 40px)); text-align:center; }
.signupCard .kicker { display:block; margin-bottom:14px; }
.signupCard h1,.signupCard h2,.signupCard .signupHeadline { margin:0 0 14px; font-size:clamp(32px,5vw,44px); line-height:1.05; letter-spacing:-.03em; }
.signupCard>p { margin:0 0 34px; color:var(--secondary); font-size:16px; line-height:1.6; }
.signupCard .betaForm { text-align:left; }
.signupFooter { text-align:center; padding-block:26px; }
.signupFooter a { color:var(--secondary); font-size:13px; }
.signupFooter a:hover { color:var(--white); }
@media(max-width:980px){.hero{grid-template-columns:1fr;text-align:center;gap:20px}.heroCopy>p{margin-inline:auto}.eyebrow,.heroActions,.trustRow{justify-content:center}.heroVisual{min-height:650px}.steps{grid-template-columns:1fr}.stepCard{min-height:290px}.differenceGrid,.betaGrid{grid-template-columns:1fr}.differenceGrid{gap:65px}.splitHeading{grid-template-columns:1fr;gap:20px}.privacyCard{grid-template-columns:auto 1fr}.privacyFacts{grid-column:1/-1}}
@media(max-width:720px){.navLinks{display:none}.signalInner{grid-template-columns:repeat(2,1fr);padding-block:15px}.signalInner>span:nth-child(2){border-right:0}.signalInner>span{min-height:76px;justify-content:center}.section{padding-block:90px}.screens{grid-template-columns:1fr;max-width:430px;margin-inline:auto}.screenRaised{margin-top:0}.privacyCard{grid-template-columns:1fr;text-align:center;padding:36px 24px}.privacyMark{margin-inline:auto}.privacyFacts{grid-column:auto}.formRow{grid-template-columns:1fr}.footer{flex-direction:column;justify-content:center;padding-block:34px}}
@media(max-width:560px){.shell{width:min(100% - 30px,1180px)}.nav{height:76px}.navCta{padding:10px 14px;font-size:13px}.hero{padding-top:45px}h1{font-size:52px}.heroCopy>p{font-size:17px}.heroActions{flex-direction:column;gap:20px}.trustRow{flex-direction:column;gap:10px;align-items:center}.heroVisual{min-height:600px;margin-inline:-5px}.phone{width:260px}.haloOne{width:355px;height:355px}.haloTwo{width:290px;height:290px}.floatTag{left:-4px;top:25%}.floatSuccess{right:-4px;bottom:21%}.section h2{font-size:42px}.stepCard{padding:30px}.stepCard>small{left:30px}.challengeCard{padding:24px}.holdRing,.mathBubble{width:105px;height:105px}.connector{width:25px}.betaForm{padding:26px 20px}}
@media(max-width:782px){body.admin-bar .nav{margin-top:46px}}

/* Content Blocks plugin token remap — makes the plugin's own Contact Form 7 styling (and any of its 6 blocks) match this theme's dark palette automatically. The actual form CSS rules live in the plugin, not here. !important guarantees this wins regardless of which stylesheet the browser happens to load first. */
:root {
	--cb-ink: var(--white) !important;
	--cb-secondary: var(--secondary) !important;
	--cb-surface: var(--slate) !important;
	--cb-border: rgba(244,247,246,.1) !important;
	--cb-accent: var(--lavender) !important;
	--cb-radius: 30px !important;
	--cb-card-bg: var(--slate) !important;
	--cb-input-bg: var(--midnight) !important;
	--cb-on-accent: var(--midnight) !important;
	--cb-success: var(--mint) !important;
	--cb-success-bg: rgba(97,230,181,.08) !important;
	--cb-error: #ff8c8c !important;
	--cb-error-bg: rgba(255,93,93,.08) !important;
}
