/* Salt Puck packaging identity V1: white, cobalt, graphite, a little yellow. */
:root{--sp-blue:#1746c8;--sp-ink:#171c29;--sp-muted:#566073;--sp-paper:#fff;--sp-soft:#f3f4f6;--sp-line:#dce0e8;--sp-yellow:#e9f363;--green:var(--sp-blue);--lime:var(--sp-yellow);font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;color:var(--sp-ink);background:var(--sp-paper)}
body{background:var(--sp-paper)}
.brand{color:var(--sp-blue);font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;font-size:30px;font-weight:900;font-style:italic;text-transform:uppercase;letter-spacing:-1.6px;line-height:.95;text-decoration:none;flex-shrink:0}
.brand span{font-style:normal;color:var(--sp-muted)}
h1,h2,h3{color:var(--sp-ink)}
button,input,select,textarea{font-family:inherit}
button,.button{background:var(--sp-blue);border-color:var(--sp-blue);border-radius:4px;color:#fff;font-family:inherit}
button:hover,.button:hover{background:#10359e;filter:none}
button.secondary,.actions button,.quiet{background:#eef2ff;color:var(--sp-blue);border-color:#d7e0fa}
button.danger{background:#a53224;color:#fff;border-color:#a53224}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--sp-blue);outline-offset:4px}
input,select,textarea{color:var(--sp-ink);border-color:#abb4c5;border-radius:4px;accent-color:var(--sp-blue)}
header,footer,.card,.panel,.metric,details,td,th,.order-total{border-color:var(--sp-line)}
p,.fine,.intro,.offer span,dt,label,small,footer,.metric span,.footnote,#identity,#hint,.empty{color:var(--sp-muted)}
.eyebrow{color:var(--sp-blue);font-size:12px;letter-spacing:.13em}
.card,.panel,.device-card,.metric,dialog{border-color:var(--sp-line);border-radius:8px}
.tinted,.notice,#setup,.outlook{background:#f0f3fb;color:var(--sp-ink);border-color:var(--sp-blue)}
.pill:not(.warn):not(.offline){background:#edf2ff;color:#244595}
.tabs button{background:transparent;color:var(--sp-muted)}
.tabs button[aria-current]{background:var(--sp-blue);color:#fff}
.secret{border-color:var(--sp-blue);background:#f1f4fe}
dialog{color:var(--sp-ink)}
#message:not(:empty):not(.error){background:#f0f3fb;border-color:var(--sp-blue);color:var(--sp-ink)}
#deleteUserError{color:#a53224}
/* Public pages */
.sp-marketing .wrap{max-width:1260px}
.sp-marketing header{min-height:104px;border-bottom:1px solid var(--sp-line)}
.sp-marketing nav a{font-size:14px;font-weight:600}
.sp-marketing .hero{gap:60px;padding-top:76px;padding-bottom:84px;align-items:center}
.sp-marketing .hero h1{font-size:clamp(48px,5.6vw,78px);line-height:.99;letter-spacing:-.055em;font-weight:850;margin-bottom:28px}
.sp-marketing .hero h1 span{color:var(--sp-blue)}
.sp-marketing .hero .eyebrow{display:inline-block;background:var(--sp-yellow);padding:7px 11px;letter-spacing:.1em;color:var(--sp-ink);margin-bottom:25px;font-size:11px}
.sp-marketing .intro{font-size:19px;line-height:1.65;max-width:450px}
.sp-marketing .offer strong{color:var(--sp-blue);font-weight:850}
.sp-marketing .offer span{font-size:14px}
.sp-marketing .actions{gap:20px;flex-wrap:wrap}
.sp-marketing .button{font-size:15px;padding:16px 23px}
.sp-marketing .button.small{padding:12px 17px;font-size:13px}
.sp-marketing .text-link{font-size:14px;color:var(--sp-blue)}
.sp-marketing .product-hero{background:var(--sp-soft);padding:18px;border:1px solid #e8eaf0;border-radius:8px;transform:rotate(2deg)}
.sp-marketing .product-hero img{border-radius:3px;background:#e5e5e5}
.sp-marketing .product-hero figcaption{font-size:12px;color:var(--sp-muted);padding:16px 6px 2px}
.sp-marketing .features{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding-top:36px;padding-bottom:54px;border-color:var(--sp-line)}
.sp-marketing .features span{color:var(--sp-blue);font-weight:750}
.sp-marketing .features h2{font-size:19px;line-height:1.2;letter-spacing:-.03em}
.sp-marketing .features p{font-size:14px;color:var(--sp-muted);line-height:1.65}
.sp-marketing .setup{border-top:1px solid var(--sp-line);padding-top:80px;gap:100px}
.sp-marketing h2{font-weight:800;letter-spacing:-.045em}
.sp-marketing .setup li:before{border-radius:4px;background:var(--sp-blue);color:#fff}
.sp-marketing .setup li p{color:var(--sp-muted)}
.sp-marketing .photo-grid img{border-radius:6px}
.sp-marketing .photo-heading p:last-child,.sp-marketing .photo-grid figcaption span{color:var(--sp-muted)}
.sp-marketing .spec-heading{text-align:left;margin-left:0}
.sp-marketing .spec-heading>p:last-child,.sp-marketing .spec-card li,.sp-marketing .spec-list dd{color:var(--sp-muted)}
.sp-marketing .spec-card{border-radius:6px;border-color:var(--sp-line);background:var(--sp-soft)}
.sp-marketing .spec-card li:before{color:var(--sp-blue)}
.sp-marketing .spec-list>div{border-color:var(--sp-line)}
.sp-marketing .included-kit{background:var(--sp-blue);color:#fff;border:0;border-radius:6px;padding:36px}
.sp-marketing .included-kit h3,.sp-marketing .included-kit .eyebrow{color:#fff}
.sp-marketing .included-kit li span{color:var(--sp-yellow)}
.sp-marketing .included-kit .fine{color:#e4eaff}
.sp-marketing .contact-section{background:var(--sp-soft);color:var(--sp-ink);border-top:1px solid var(--sp-line)}
.sp-marketing .contact-section .eyebrow,.sp-marketing .phone{color:var(--sp-blue)}
.sp-marketing .contact-section .fine,.sp-marketing .contact-section form .fine{color:var(--sp-muted)}
.sp-marketing form{color:var(--sp-ink);border:1px solid var(--sp-line);border-radius:6px;box-shadow:0 10px 36px #17244806}
.sp-marketing .legal p,.sp-marketing .legal li{color:var(--sp-muted)}
.sp-marketing footer small{color:var(--sp-muted)}
.sp-marketing .order-page{padding-top:60px;gap:65px}
.sp-marketing .order-intro h1{color:var(--sp-blue)}
.sp-marketing .order-page form{border-color:var(--sp-line)}
.sp-account nav a[aria-current=page]{border-color:var(--sp-blue)}
.sp-account .eyebrow,.sp-account .big,.sp-account .metric strong{color:var(--sp-blue)}
.sp-account .metrics,.sp-account #account-timeline,.sp-account #device-detail>details{border-color:var(--sp-line)}
.sp-account .metric{border-color:var(--sp-line)}
.sp-account .alert-levels input{accent-color:var(--sp-blue)}
.sp-admin .metric strong{color:var(--sp-blue)}
@media(max-width:1000px){.sp-marketing header{flex-wrap:wrap;padding-top:24px;padding-bottom:24px;gap:22px}.sp-marketing header nav{gap:18px;flex-wrap:wrap}.sp-marketing .hero{gap:35px}.sp-marketing .features{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.sp-marketing .hero{padding-top:42px;padding-bottom:55px;gap:35px}.sp-marketing .hero h1{font-size:clamp(46px,9vw,68px)}.sp-marketing .product-hero{transform:none;max-width:580px}.sp-marketing .setup{padding-top:48px;gap:30px}.sp-marketing .order-page{padding-top:35px;gap:30px}.sp-marketing .included-kit{padding:25px}.sp-marketing .contact-grid{gap:30px}.sp-marketing .brand{font-size:28px}}
@media(max-width:480px){.sp-marketing .features{grid-template-columns:1fr;gap:25px}.sp-marketing .wrap{padding-left:22px;padding-right:22px}.sp-marketing header nav{gap:15px}.sp-marketing .hero h1{font-size:48px}.sp-marketing .offer{flex-wrap:wrap;gap:6px 12px}.sp-marketing .offer span{font-size:13px}.sp-marketing .product-hero{padding:12px}.sp-marketing .included-kit ul{gap:24px 16px}.sp-marketing .phone{font-size:25px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
button.secondary:hover,.actions button:hover,.quiet:hover{background:#dfe7fc;color:var(--sp-blue)}
button.danger:hover{background:#81261c;color:#fff}
@media(max-width:700px){.sp-admin header{flex-wrap:wrap;gap:18px}.sp-admin header nav{flex-wrap:wrap}.sp-admin .brand{font-size:25px}}
