@@ -632,41 +632,36 @@ export default function CertificateCard({ cert, onReset }: Props) {
632632 const shieldsUrl = `https://img.shields.io/badge/%F0%9F%AA%A6%20declared%20dead-view%20certificate-555?style=for-the-badge&labelColor=cc0000`
633633 const badgeMd = `[](${ repoUrl } )`
634634 return (
635- < div style = { { width : '100%' , display : 'flex' , justifyContent : 'center' } } >
636- < div className = "readme-badge-block record-card" style = { { border : '2px solid #1a1a1a' , boxShadow : '0 1px 4px rgba(0,0,0,0.05)' , padding : '14px 16px' , width : '100%' } } >
637- < div className = "readme-badge-row " >
638- < div style = { { display : 'flex' , justifyContent : 'center' , flex : '1 1 260px' } } >
635+ < div className = "cert-readme-badge-wrap" >
636+ < div className = "cert- readme-badge record-card" >
637+ < div className = "cert- readme-badge-top " >
638+ < div className = "cert-readme-badge-preview" >
639639 { /* eslint-disable-next-line @next/next/no-img-element */ }
640640 < img
641641 src = { shieldsUrl }
642642 alt = "README badge preview"
643643 loading = "lazy"
644644 decoding = "async"
645- style = { { height : '28px' , width : 'auto' , display : 'block' , flexShrink : 0 } }
645+ style = { { height : '28px' , width : 'auto' , display : 'block' } }
646646 />
647647 </ div >
648648 < button
649649 type = "button"
650- onClick = { async ( ) => { try { await navigator . clipboard . writeText ( badgeMd ) ; setBadgeCopied ( true ) ; setTimeout ( ( ) => setBadgeCopied ( false ) , 2000 ) } catch { /* ignore */ } } }
651- className = "readme-copy-btn"
652- style = { {
653- fontFamily : MONO , fontSize : '10px' , fontWeight : 700 , letterSpacing : '0.06em' ,
654- padding : '8px 14px' , minHeight : '36px' ,
655- background : badgeCopied ? '#2d7a3c' : 'transparent' ,
656- color : badgeCopied ? '#fff' : '#4a4440' ,
657- border : `2px solid ${ badgeCopied ? '#2d7a3c' : '#cec6bb' } ` ,
658- cursor : 'pointer' ,
659- transition : 'all 0.15s' ,
660- whiteSpace : 'nowrap' ,
661- flexShrink : 0 ,
650+ onClick = { async ( ) => {
651+ try {
652+ await navigator . clipboard . writeText ( badgeMd )
653+ setBadgeCopied ( true )
654+ setTimeout ( ( ) => setBadgeCopied ( false ) , 2000 )
655+ } catch {
656+ // ignore
657+ }
662658 } }
663- onMouseEnter = { e => { if ( ! badgeCopied ) { e . currentTarget . style . borderColor = '#1a1a1a' ; e . currentTarget . style . color = '#1a1a1a' } } }
664- onMouseLeave = { e => { if ( ! badgeCopied ) { e . currentTarget . style . borderColor = '#cec6bb' ; e . currentTarget . style . color = '#4a4440' } } }
659+ className = "readme-copy-btn cert-readme-copy-btn"
665660 >
666661 { badgeCopied ? '✓ copied!' : '⎘ copy to readme' }
667662 </ button >
668663 </ div >
669- < p className = "readme-badge-caption" style = { { fontFamily : MONO , textAlign : 'left' } } >
664+ < p className = "readme-badge-caption cert-readme-caption " style = { { fontFamily : MONO } } >
670665 ↻ paste once — updates automatically
671666 </ p >
672667 </ div >
0 commit comments