/* inputconfig.com additions on top of the shared stylesheet (styles.css is copied from
   ryleighnewman.com unchanged). This file only adds product layout, media, and motion.
   Spacing scale: 8 / 16 / 24 / 40 / 64. Widths: 980 sections, 760 prose. */
:root{--y-8:8px;--y-16:16px;--y-24:24px;--y-40:40px;--y-64:64px;--y-w:980px;--y-prose:760px;--y-ink:#dddddd;--y-mute:#9fb0bd;--y-accent:rgb(169,204,227);--y-head:rgb(100,150,200)}

/* hero */
.ic-hero{position:relative;min-height:0;padding:118px 20px var(--y-40);overflow:hidden;background:radial-gradient(70% 60% at 30% 20%,rgba(60,110,180,.45),transparent 70%),radial-gradient(60% 50% at 80% 30%,rgba(120,80,200,.35),transparent 70%),rgb(18,22,24);box-shadow:none}
.ic-hero .backdrop{position:absolute;left:50%;top:24%;width:min(1400px,160vw);transform:translate(-50%,-50%);opacity:.38;mix-blend-mode:screen;filter:blur(.6px) saturate(1.3);pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}
.ic-hero > *{position:relative}
.hero-title{font-size:clamp(2.2rem,6vw,4.4rem);line-height:1.05;font-weight:300;margin:0;letter-spacing:-.01em}
.hero-title .accent{display:block;color:var(--y-accent)}
.hero-lede{max-width:var(--y-prose);margin:var(--y-24) auto 0;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.5;text-shadow:none}
.hero-actions{display:flex;gap:var(--y-16);justify-content:center;align-items:center;flex-wrap:wrap;margin:var(--y-24) auto 0}
.store-badge img{display:block;height:52px;width:auto}
.hero-note{margin:10px 0 0;font-size:.95rem;color:var(--y-mute);text-shadow:none}
.hero-video{width:min(720px,100%);margin:var(--y-40) auto 0;border-radius:var(--lg-radius);overflow:hidden;filter:drop-shadow(0 30px 60px rgba(0,0,0,.6))}
.hero-video video{display:block;width:100%;height:auto}

/* sections: one rhythm everywhere */
.ic-section{padding:var(--y-24) 20px}
.ic-section + .ic-section{padding-top:0}
.ic-section .section-box{max-width:var(--y-w);padding:var(--y-40) clamp(20px,4vw,48px);margin:var(--y-40) auto}
.ic-section .section-title-blue{margin:0 0 var(--y-8);font-size:clamp(1.3rem,2.6vw,1.8rem)}
.ic-section .lead{max-width:var(--y-prose);margin:0 auto var(--y-24);font-size:1.08rem;color:var(--y-ink)}
.ic-section p{max-width:none;font-size:1.02rem;line-height:1.55;color:var(--y-ink);hyphens:manual;-webkit-hyphens:manual}
.demo-copy p,.feature-grid p,.faq p,.pair span{text-align:left}
.ic-section h3{font-weight:300;font-size:1.2rem;color:var(--y-accent);margin:0 0 6px}

/* demo videos */
.demo{display:grid;grid-template-columns:1.25fr .75fr;gap:var(--y-24);align-items:center;text-align:left;margin-top:var(--y-24)}
.demo + .demo{margin-top:var(--y-40)}
.demo.flip{grid-template-columns:.75fr 1.25fr}.demo.flip .demo-copy{order:-1}
@media (max-width:820px){.demo,.demo.flip{grid-template-columns:1fr}.demo.flip .demo-copy{order:0}}
.demo-video{border-radius:var(--lg-radius);overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 60px rgba(0,0,0,.5);background:#0f1418}
.demo-video video{display:block;width:100%;height:auto}
.demo-copy p{margin:0 0 10px}

/* spoken -> typed examples */
.pairs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--y-16);text-align:left;margin-top:var(--y-16)}
.pair{background:rgba(15,18,22,.6);border:1px solid rgba(255,255,255,.14);border-radius:var(--lg-radius-inner);padding:14px 16px}
.pair .said,.pair .typed{display:block;font-size:.98rem;line-height:1.45}
.pair .said{color:var(--y-mute)}.pair .said::before{content:"You say";display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--y-head);margin-bottom:2px}
.pair .typed{color:#fff;margin-top:10px}.pair .typed::before{content:"It types";display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--y-head);margin-bottom:2px}
.pair .q,.q{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;color:#fff;background:rgba(100,150,200,.22);border-radius:6px;padding:1px 6px}

/* feature grid */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--y-16);margin-top:var(--y-16);text-align:left}
.feature-grid .sub-section-box{margin:0;max-width:none;padding:16px 18px}
.feature-grid p{font-size:.98rem;line-height:1.45;margin:0}

/* still images */
.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--y-24);align-items:center;text-align:left;margin-top:var(--y-16)}
@media (max-width:760px){.split{grid-template-columns:1fr}}
.split img{width:100%;height:auto;border-radius:var(--lg-radius-inner);filter:drop-shadow(0 16px 30px rgba(0,0,0,.5))}

/* faq */
.faq{text-align:left}
.faq details{border-top:1px solid rgba(255,255,255,.14);padding:12px 0}.faq details:last-of-type{border-bottom:1px solid rgba(255,255,255,.14)}
.faq summary{cursor:pointer;color:#fff;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary::after{content:"+";color:var(--y-accent);flex:none}.faq details[open] summary::after{content:"\2013"}
.faq p{font-size:.98rem;margin:8px 0 0}

/* reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* footer: the shared glass footer, laid out properly */
.footer-wrapper{margin-top:var(--y-40)}
footer.ic-footer{flex-direction:column;align-items:stretch;padding:var(--y-24) clamp(20px,4vw,40px) var(--y-16);max-width:var(--y-w);font-size:.95rem}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:var(--y-24);text-align:left}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr 1fr}}
.foot-brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:1.1rem}.foot-brand img{width:36px;height:36px;border-radius:9px}
.foot-brand + p{margin:10px 0 0;font-size:.9rem;color:var(--y-mute);max-width:280px}
.foot-col .foot-head{margin:0 0 8px;font-weight:300;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--y-head)}
.foot-col a{display:block;color:var(--y-ink);margin:0 0 6px;font-size:.95rem}.foot-col a:hover{color:var(--y-accent)}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:var(--y-24);padding-top:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:var(--y-mute)}
.foot-bottom p{margin:0;font-size:.85rem;color:var(--y-mute)}

/* article pages */
.ic-article{padding-top:96px}
.ic-prose{text-align:left;max-width:var(--y-prose)}
.ic-prose h1.section-title-blue{text-transform:none;font-size:clamp(1.8rem,4vw,2.4rem);margin:0 0 var(--y-16)}
.ic-h2{font-weight:300;font-size:1.35rem;color:var(--y-accent);margin:var(--y-24) 0 var(--y-8)}
.ic-prose p,.ic-prose li{font-size:1.02rem;line-height:1.55;color:var(--y-ink);text-align:left;hyphens:manual;-webkit-hyphens:manual}
.ic-prose ul,.ic-prose ol{margin:6px 0 12px 22px}
.ic-figure{margin:var(--y-16) 0}.ic-figure img{width:100%;max-width:760px;height:auto;display:block;margin:0 auto;border-radius:var(--lg-radius-inner);filter:drop-shadow(0 16px 30px rgba(0,0,0,.5))}
.ic-figure figcaption{font-size:.9rem;color:var(--y-mute);font-style:italic;text-align:center;margin:10px 0 0}
.ic-kicker{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--y-head);margin:0 0 6px}
.ic-cards .ic-card{display:block;color:inherit;text-decoration:none;transition:transform .25s ease,background-color .25s ease}.ic-cards .ic-card:hover{transform:translateY(-3px);text-decoration:none;background-color:rgba(20,30,40,.85)}
.ic-prose table{width:100%;border-collapse:collapse;margin:10px 0 16px;font-size:.98rem}.ic-prose th,.ic-prose td{border:1px solid rgba(255,255,255,.14);padding:8px 10px;text-align:left;vertical-align:top}.ic-prose th{color:var(--y-accent);font-weight:300}
.ic-sources{font-size:.9rem;word-break:break-all}

/* fixes from the site review */
@font-face{font-family:'Segoe UI';src:url('/assets/fonts/segoeuil-latin.woff2') format('woff2'),url('/assets/fonts/segoeuil.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
.page-loader{display:none}
a:focus-visible,summary:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:4px}
.ic-cards .ic-card:focus-visible{transform:translateY(-3px);background-color:rgba(20,30,40,.85)}
.menu-check{display:block;position:fixed;top:15px;right:50px;width:42px;height:36px;margin:0;opacity:0;z-index:1011;cursor:pointer}
@media (min-width:460px){.menu-check{display:none}}
.menu-check:focus-visible + .menu-toggle{outline:2px solid #fff;outline-offset:2px}
.motion-toggle{-webkit-appearance:none;appearance:none;margin-left:10px;font:inherit;font-size:.85rem;line-height:1.2;color:var(--y-ink);background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:4px 12px;cursor:pointer;text-shadow:none}
.motion-toggle:hover{border-color:#fff}
.ic-cards h2{font-weight:300;font-size:1.2rem;color:var(--y-accent);margin:0 0 6px;text-transform:none}

/* inputconfig.com: the demo rows and hero carry still images, not video */
.hero-video img,.demo-video img{display:block;width:100%;height:auto}
.demo-video{aspect-ratio:16/10}
.preset-link{display:inline-block;margin-top:var(--y-16);font-size:.98rem}

/* resource library: help, guides, presets, tools */
.ic-wide{max-width:var(--y-w)}
.ic-steps{counter-reset:step;list-style:none;margin:8px 0 16px 0;padding:0}
.ic-steps li{counter-increment:step;position:relative;padding:8px 0 8px 44px;border-top:1px solid rgba(255,255,255,.1)}
.ic-steps li:last-child{border-bottom:1px solid rgba(255,255,255,.1)}
.ic-steps li::before{content:counter(step);position:absolute;left:0;top:9px;width:28px;height:28px;border-radius:50%;background:rgba(100,150,200,.22);color:#fff;font-size:.9rem;display:flex;align-items:center;justify-content:center}
.ic-downloads{list-style:none;margin:8px 0 12px;padding:0}
.ic-downloads li{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap;padding:10px 0;border-top:1px solid rgba(255,255,255,.1)}
.ic-downloads li:last-child{border-bottom:1px solid rgba(255,255,255,.1)}
.ic-downloads a{color:#fff;font-size:1.02rem;padding:6px 14px;border:1px solid rgba(169,204,227,.5);border-radius:999px;text-decoration:none}
.ic-downloads a:hover{background:rgba(169,204,227,.15);text-decoration:none}
.ic-downloads span{color:var(--y-mute);font-size:.95rem}
.ic-mute{color:var(--y-mute)!important;font-size:.95rem!important}
.ic-related{list-style:none;margin:8px 0 12px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 24px}
.ic-related li{padding:4px 0}.ic-related a{color:var(--y-ink)}.ic-related a:hover{color:var(--y-accent)}
.ic-cta{margin:var(--y-40) 0 0;text-align:center}.ic-cta .store-badge img{height:44px;margin:0 auto}
.ic-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0 16px}
.ic-tablewrap table{min-width:560px}
.ic-prose blockquote{margin:12px 0;padding:10px 16px;border-left:3px solid var(--y-accent);background:rgba(15,18,22,.5);border-radius:6px}
.ic-prose blockquote p{margin:0}
.ic-prose h3{font-weight:300;font-size:1.12rem;color:#fff;margin:18px 0 6px}
.ic-prose .ic-note{padding:10px 14px;border:1px solid rgba(169,204,227,.35);border-radius:var(--lg-radius-inner);background:rgba(100,150,200,.08);font-size:.98rem}
.ic-prose kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-bottom-width:2px;border-radius:5px;padding:1px 6px}
.ic-prose .ic-kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:8px 0 14px}
.ic-prose .ic-kv dt{color:var(--y-accent)}.ic-prose .ic-kv dd{margin:0;color:var(--y-ink)}
@media (max-width:600px){.ic-prose .ic-kv{grid-template-columns:1fr}.ic-prose .ic-kv dd{margin:0 0 8px}}

/* tools */
.tool{margin-top:var(--y-16);text-align:left}
.tool-panel{background:rgba(15,18,22,.6);border:1px solid rgba(255,255,255,.14);border-radius:var(--lg-radius-inner);padding:16px 18px;margin:12px 0}
.tool-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:8px 0}
.tool-row label{color:var(--y-ink);font-size:.98rem;display:flex;align-items:center;gap:8px}
.tool input[type=range]{width:200px;accent-color:var(--y-accent)}
.tool input[type=text],.tool input[type=search],.tool select{font:inherit;font-size:1rem;color:#fff;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 12px;min-width:0}
.tool input[type=search]{width:100%;max-width:520px}
.tool select{-webkit-appearance:none;appearance:none;padding-right:28px;background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.tool button,.tool .btn-pill{font:inherit;font-size:.98rem;color:#fff;background:rgba(100,150,200,.22);border:1px solid rgba(169,204,227,.5);border-radius:999px;padding:7px 16px;cursor:pointer}
.tool button:hover,.tool .btn-pill:hover{background:rgba(169,204,227,.28)}
.tool button[aria-pressed=true],.tool .btn-pill.on{background:var(--y-accent);color:#101418;border-color:var(--y-accent)}
.tool .out{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.05rem;color:#fff;background:rgba(0,0,0,.35);border-radius:8px;padding:10px 14px;margin:8px 0;min-height:1.4em;word-break:break-word}
.tool .out.big{font-size:1.6rem}
.tool .hint{color:var(--y-mute);font-size:.92rem;margin:4px 0}
.tool svg{max-width:100%;height:auto;display:block;margin:0 auto}
.tool .ctl{cursor:pointer;fill:rgba(255,255,255,.08);stroke:rgba(255,255,255,.35);stroke-width:1.5;transition:fill .15s}
.tool .ctl:hover,.tool .ctl.on{fill:rgba(169,204,227,.55);stroke:#fff}
.tool .lbl{fill:#dddddd;font-size:11px;pointer-events:none;text-anchor:middle;font-family:'Segoe UI',system-ui,sans-serif}
.tool table{width:100%;border-collapse:collapse;font-size:.96rem}
.tool th,.tool td{border:1px solid rgba(255,255,255,.14);padding:6px 10px;text-align:left;vertical-align:top}
.tool th{color:var(--y-accent);font-weight:300;cursor:pointer;user-select:none}
.tool tr.hit td{background:rgba(169,204,227,.18)}
.tool .grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--y-16);align-items:start}
@media (max-width:760px){.tool .grid2{grid-template-columns:1fr}}
.tool .chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.tool .chip{font-size:.9rem;color:var(--y-ink);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:3px 10px}
.tool canvas{display:block;max-width:100%;border-radius:12px;background:rgba(0,0,0,.35)}
.tool .result-card{border:1px solid rgba(169,204,227,.4);border-radius:var(--lg-radius-inner);padding:14px 16px;margin:10px 0;background:rgba(100,150,200,.08)}
.tool .result-card h3{margin:0 0 4px;font-size:1.15rem;color:#fff;font-weight:300}
.tool .result-card p{margin:4px 0}
.tool .qbtns{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:8px 0 14px}
.tool .qbtns button{text-align:left;border-radius:12px;padding:12px 14px;line-height:1.35}
.tool .qbtns button small{display:block;color:var(--y-mute);font-size:.85rem;margin-top:2px}
.tool .qbtns button[aria-pressed=true] small{color:#101418}
